一种自评分的远程实验系统及方法

文档序号:32998496发布日期:2023-01-18 00:38阅读:53来源:国知局
一种自评分的远程实验系统及方法

1.本发明属于无线技术及测控技术领域,具体涉及一种自评分的远程实验系统及方法。


背景技术:

2.目前,利用单片机进行实验时,仍需前往实验室进行,对于无法达到实验现场的人员而言,极其不方便;以及当学生在进行实验时,因没有指导老师在场,学生应付实验的情况屡屡发生。


技术实现要素:

3.发明目的:为解决无法远程利用单品机进行实验的问题,以及为解决无法远程进行实验监督的问题,本发明提出了一种自评分的远程实验系统及方法。
4.技术方案:一种自评分的远程实验系统,包括:
5.用户端,用于获取用户录入的用户信息和单片机烧写文件,并将用户信息和单片机烧写文件发送给服务器端;所述用户信息包括用户姓名和实验序号;以及用于接收来自服务器端的实验情况信息;
6.服务器端,用于向远程单片机烧写系统发送单片机烧写启动信号,以及向远程单片机烧写系统传输单片机烧写文件和用户信息中的实验序号,以及用于接收来自远程单片机烧写系统的实验情况码,将该实验情况码进行转换,得到实验情况信息,并将该实验情况信息发送至用户端,以及用于对实验情况信息和对应的用户信息进行存储;
7.远程单片机烧写系统,用于当接收到单片机烧写启动信号后,控制双mcu实验系统进行冷启动,当双mcu实验系统冷启动后,向双mcu实验系统发送单片机烧写启动信号,以及用于将实验序号发送给双mcu实验系统,以及用于将来自双mcu实验系统的实验情况码上传至服务器端;
8.双mcu实验系统,用于当接收到单片机烧写启动信号后,从远程单片机烧写系统中下载单片机烧写文件,进行单片机烧写文件的烧写,以及用于将实验序号传输给评分系统,以及用于将来自评分系统的实验情况码上传给远程单片机烧写系统;
9.评分系统,用于根据实验序号,调用相应的评分程序,对单片机的运行情况进行监测,得到实验情况码;所述实验情况码包括错误码。
10.进一步的,用户端与服务器端建立tcp协议通讯。
11.进一步的,所述的用户端与服务器端建立tcp协议通讯,具体包括:
12.用户端与闪库解析软件绑定并通讯;
13.用户端利用闪库解析软件获取服务器端的动态ip地址;
14.用户端与闪库解析软件获取到的服务器端的动态ip地址绑定,实现用户端与服务器端的tcp协议通讯。
15.进一步的,所述的单片机烧写文件为bin文件,所述bin文件为由hex烧写文件转换
得到,所述hex烧写文件为由单片机编译软件生成。
16.进一步的,所述的将该实验情况码进行转换,得到实验情况信息,具体包括:
17.依据服务器端预置的单片机实验常见错误原因文件,将实验情况码转换为实验情况信息;
18.在所述单片机实验常见错误原因文件中,包括实验情况码和其对应的实验情况信息。
19.进一步的,所述的控制双mcu实验系统进行冷启动,具体包括:
20.远程单片机烧写系统中包括:继电器和单片机;该继电器与双mcu实验系统的电源端连接,且该继电器受单片机控制;
21.当接收到单片机烧写启动信号后,单片机控制继电器关闭,使双mcu实验系统断电;
22.当双mcu实验系统断电超过设定时间后,单片机控制继电器打开,使双mcu实验系统上电,实现冷启动。
23.进一步的,在所述远程单片机烧写系统中还包括wifi模块,远程单片机烧写系统通过wifi模块与服务器端通讯,该远程单片机烧写系统以串口通讯的方式与双mcu实验系统通讯。
24.进一步的,所述双mcu实验系统包括第一mcu和第二mcu,所述第一mcu以串口通讯的方式与远程单片机烧写系统通讯,用于当接收到单片机烧写启动信号后,从远程单片机烧写系统中下载单片机烧写文件,进行单片机烧写文件的烧写;所述第二mcu以串口通讯的方式与评分系统通讯,用于将实验序号传输给评分系统,并将来自评分系统的实验情况码上传给远程单片机烧写系统。
25.进一步的,所述的远程单片机烧写系统通过wifi模块与服务器端通讯,具体包括:
26.wifi模块连接闪库解析软件,并向闪库解析软件发送服务器端ip查询命令;
27.由闪库解析软件获取服务器端的动态ip地址,并将服务器端的动态ip地址发送给wifi模块,wifi模块连接服务器端的动态ip地址。
28.本发明还公开了一种自评分的远程实验方法,包括:
29.远程单片机烧写系统控制双mcu实验系统冷启动的步骤;
30.双mcu实验系统进行单片机烧写文件的烧写的步骤;
31.评分系统对单片机实验进行实验评分的步骤;
32.其中,所述的远程单片机烧写系统控制双mcu实验系统冷启动的步骤,包括:
33.获取单片机烧写启动信号、单片机烧写文件和实验序号;
34.停止给双mcu实验系统供电;
35.停止给双mcu实验系统供电的时长达到设定时长后,重新给双mcu实验系统供电,并将单片机烧写启动信号传输给双mcu实验系统;
36.其中,所述的双mcu实验系统进行单片机烧写文件的烧写的步骤,包括:
37.当收到单片机烧写启动信号后,从远程单片机烧写系统的端口读取单片机烧写文件,实现单片机烧写文件的烧写;
38.将实验序号发送至评分系统;
39.其中,所述的评分系统对单片机实验进行实验评分的步骤,包括:
40.根据实验序号,调用相应的评分程序,对单片机的运行情况进行监测,得到实验情况码;
41.将实验情况码上传至双mcu实验系统,由双mcu实验系统将实验情况码向外传输。
42.有益效果:本发明与现有技术相比,具有以下优点:
43.(1)本发明通过远程单片机烧写系统,实现了真实的远程实验功能;
44.(2)本发明通过远程单片机烧写系统和评分系统,对实验操作进行记录,实现了实验现象远程观察功能;
45.(3)本发明利用双mcu实验系统,实现单片机实验的自评分功能。
附图说明
46.图1为一种自评分的远程实验系统的框架图;
47.图2为远程单片机烧写系统对应的电路图;
48.图3为双mcu实验系统的主功能图;
49.图4为用户端界面示意图;
50.图5为服务器端界面示意图。
具体实施方式
51.现结合附图和实施例进一步阐述本发明的技术方案。
52.实施例1:
53.如图1所示,本实施例公开了一种自评分的远程实验系统,包括:
54.用户端,用于获取用户录入的用户信息和单片机烧写文件,并将用户信息和单片机烧写文件发送给服务器端;所述用户信息包括用户姓名和实验序号;以及用于接收来自服务器端的实验情况信息;实验情况信息包括实验评分和评分依据;
55.服务器端,用于向远程单片机烧写系统发送单片机烧写启动信号,以及向远程单片机烧写系统传输单片机烧写文件和用户信息中的实验序号,以及用于接收来自远程单片机烧写系统的实验情况码,将该实验情况码进行转换,得到实验情况信息,并将该实验情况信息发送至用户端,以及用于对实验情况信息和对应的用户信息进行存储;
56.远程单片机烧写系统,用于当接收到单片机烧写启动信号后,控制双mcu实验系统进行冷启动,当双mcu实验系统冷启动后,向双mcu实验系统发送单片机烧写启动信号,以及用于将实验序号发送给双mcu实验系统,以及用于将来自双mcu实验系统的实验情况码上传至服务器端;
57.双mcu实验系统,用于当接收到单片机烧写启动信号后,从远程单片机烧写系统中下载单片机烧写文件,进行单片机烧写文件的烧写,以及用于将实验序号传输给评分系统,以及用于将来自评分系统的实验情况码上传给远程单片机烧写系统;
58.评分系统,用于根据实验序号,调用相应的评分程序,对单片机的运行情况进行监测,得到实验情况码;实验情况码包括错误码。
59.本实施例通过远程单片机烧写系统,实现了真实的远程实验功能;以及通过远程单片机烧写系统和评分系统,对实验操作进行记录,实现了实验现象远程观察功能;并利用双mcu实验系统,实现单片机实验的自评分功能。
60.实施例2:
61.如图1所示,本实施例公开了一种自评分的远程实验系统,主要包括用户端、服务器端、远程单片机烧写系统、双mcu实验系统和评分系统。
62.用户端,与服务器端建立通讯关系,用于向服务器端发送用户信息,以及向服务器端发送单片机烧写文件,以及接收来自服务器端的实验情况信息,并对实验情况信息进行显示。该单片机烧写文件为bin文件,该bin文件是由单片机编译软件(keil)生成的hex烧写文件转换得到的。该用户信息包括用户姓名、用户联系方式和实验序号。此处的实验情况信息包括实验评分和评分依据。该评分依据在某种程度上可以为单片机实验中的错误情况。为了防止以他人名义进行远程实验,用户输入用户信息登录用户端后,用户端不允许对用户信息进行修改,该用户信息存储在用户端,每次打开用户端后,用户端后台直接读取该用户信息,通过不允许中途修改,实现防止用户以他人名义进行远程实验。图4示出了一个用户端界面的示意图,在该界面上,会将用户填写的用户信息进行显示,包括ip地址(58.219.243.46)、座位号(2)、手机号码(13800000000)和用户姓名(张三);并选择利用ip地址与服务器连接。同时,会对实验情况信息进行显示,包括分数显示和评分依据显示;并将选择的单片机烧写文件(实验三单位数码管)发送给服务器端。
63.服务器端,与用户端建立通讯关系,以及与远程单片机烧写系统建立握手关系,用于获取来自用户端的单片机烧写文件和用户信息,以及用于当收到单片机烧写文件后,向远程单片机烧写系统发送0x7f单片机烧写启动信号,以及向远程单片机烧写系统传输单片机烧写文件,以及获取来自远程单片机烧写系统的错误码,并基于在服务器端预先存储的单片机实验常见错误原因文件,将错误码转换成相应的实验错误情况,该实验错误情况可作为评分依据,依据错误码,得到实验评分,以及用于将实验评分和评分依据发送给用户端。所有的实验情况信息均会存储在服务器端。图5示出了一个服务器端的一界面的示意图,在该界面上会依据管理员的筛选条件,将符合筛选条件的实验情况信息进行展示,可供管理员进行监管,此处的监管可以为防作弊。现对防作弊做进一步说明,首先在用户端不允许修改用户信息也属于防作弊的一个措施,而后在服务器端,用户信息与实验情况信息进行绑定,管理员可通过将用户信息为筛选条件,筛选出该用户近期的实验情况,以此可以分析出该用户是否缺席实验、是否存在抄袭实验的情况,在本实施例中,但同时满足以下情况时可判定该用户存在抄袭行为:情况1:在指定时间内没有实验情况信息;情况2:在指定时间结束时的实验评分高于设定的阈值。
64.远程单片机烧写系统,主要包括继电器、单片机和wifi模块;单片机通过wifi模块与服务器端通讯,用于接收0x7f单片机烧写启动信号,以及接收单片机烧写文件;继电器与双mcu实验系统的供电端连接,该继电器受单片机控制;当单片机接收到0x7f单片机烧写启动信号后,控制继电器关闭,即远程单片机烧写系统停止给双mcu实验系统供电,关闭2秒后,单片机控制继电器打开,远程单片机烧写系统继续给双mcu实验系统供电,使双mcu实验系统冷启动。单片机以串口通讯的方式将0x7f单片机烧写启动信号传输至双mcu实验系统,以及将实验序号传输至双mcu实验系统,以及将来自双mcu实验系统的错误码上传至服务器端。本实施例的远程单片机烧写系统自带一单片机,其目的包括:配置wifi模块,让wifi模块可以与服务器端进行通讯,以及控制继电器,实现给双mcu实验系统通断电,实现双mcu实验系统的冷启动。
65.双mcu实验系统,以串口通讯的方式与远程单片机烧写系统通讯,用于接收来自远程单片机烧写系统的0x7f单片机烧写启动信号和实验序号,之后,从远程单片机烧写系统的端口下载单片机烧写文件,进行单片机烧写文件的烧写,以及将实验序号传输给评分系统。本实施例的双mcu实验系统包括第一mcu和第二mcu;其中,第一mcu用于实现实验功能,即第一mcu从远程单片机烧写系统的端口下载单片机烧写文件,进行单片机烧写文件的烧写。第二mcu用于实现评分功能,具体的,第二mcu以串口通讯的方式与评分系统通讯,将实验序号下发至评分系统,以及从评分系统中获取错误码。
66.评分系统,与双mcu实验系统的第二mcu串口通讯,用于接收实验序号,并根据实验序号,启动相应的实验评分程序,对单片机的运行过程进行监测,得到错误码。
67.此处的实验评分程序包括根据实验目的对实验端口进行检测,得到实验情况信息;此处的实验目的与实验序号一一对应。例如,当实验端口在某一时刻不正常时,将该实验情况进行记录,并通过远程单片机烧写系统的wifi模块发送给服务器端,由服务器端将实验情况信息发送给用户端。
68.在本实施例中,只有当用户端与服务器端建立通讯关系之后,用户端才能向服务器端发送用户信息,以及服务器端才能将实验情况信息发送给用户端,但电信运营商分配的公网ip都是动态ip地址,也就是说服务器端的ip地址是动态ip地址,但用户端需要与固定ip地址才能建立tcp协议通讯。为了解决动态ip地址的问题,本实施例利用闪库解析软件的固定ip地址和端口,闪库解析软件设置在服务器端上,由闪库解析软件获取服务器端的动态ip地址,将服务器端的动态ip地址与闪库解析软件的固定ip地址绑定,即可实现动态ip地址的识别,用户端与闪库解析软件建立通讯联系后,即可实现用户端与服务器端的通讯。当服务器端的动态ip地址发生变化后,可以再通过闪库解析软件获取最新的服务器端的动态ip地址。
69.实施例3:
70.本实施例公开了一种自评分的远程实验方法,对于用户端,包括以下步骤:获取用户信息,该用户信息包括用户通过人机交互界面录入的用户姓名、用户联系方式和实验序号。
71.获取由单片机编译软件(keil)生成的hex烧写文件;
72.将hex烧写文件转换为bin文件;
73.与服务器端建立tcp协议通讯,将bin文件和用户信息上传至服务器端,由服务器端启动烧写程序,控制远程单片机烧写系统将bin文件烧写至双mcu实验系统;该用户信息包括用户姓名、用户联系方式和实验序号。
74.接收来自服务器端的实验情况信息;此处的实验情况信息包括实验评分和评分依据。
75.用户端要先与服务器端建立tcp协议通讯,而后才能将bin文件和用户信息上传至服务器端。一般来讲,电信运营商分配的的公网ip都是动态ip地址,也就是说服务器端的ip地址是动态ip地址,但用户端需要与固定ip地址才能建立tcp协议通讯,为了解决该动态ip地址的问题,本实施例利用闪库解析软件的固定ip地址和端口,闪库解析软件设置在服务器端上,由闪库解析软件获取服务器端的动态ip地址,将服务器端的动态ip地址与闪库解析软件的固定ip地址绑定,即可实现动态ip地址的识别,用户端与闪库解析软件建立通讯
关系后,即可实现与服务器端的通讯。当服务器端的动态ip地址发生变化后,可以再通过闪库解析软件获取最新的服务器端的动态ip地址。
76.实施例4:
77.本实施例公开了一种自评分的远程实验方法,对于服务器端,主要包括以下步骤:
78.与用户端建立tcp协议通讯,并获取来自用户端的单片机烧写文件和用户信息。该用户信息包括用户姓名、用户联系方式和实验序号。
79.与远程单片机烧写系统建立通讯关系,并向远程单片机烧写系统发送0x7f单片机烧写启动信号、向远程单片机烧写系统传输单片机烧写文件和用户信息中的实验序号,由远程单片机烧写系统控制双mcu实验系统烧写程序。
80.接收来自远程单片机烧写系统的实验情况信息,将该实验情况信息进行处理后,将处理后的实验情况信息发送至用户端,由用户端对处理后的实验情况信息进行显示;此处的处理包括:当接收来自远程单片机烧写系统的实验情况信息中包括错误码,那么此处需要对错误码进行处理,依据预置的单片机实验常见错误原因文件,将错误码转换为相应的错误信息,将包含有错误信息的实验情况信息发送至用户端。
81.其中,将实验序号发送给远程单片机烧写系统的原因是,根据实验序号,可以在用户远程操作实验时,启动相应的评分程序,得到实验评分。
82.在本实施例中,电信运营商分配的的公网ip都是动态ip地址,也就是说服务器端的ip地址是动态ip地址,但用户端需要与固定ip地址才能建立tcp协议通讯,为了解决该动态ip地址的问题,本实施例利用闪库解析软件的固定ip地址和端口,闪库解析软件设置在服务器端上,由闪库解析软件获取服务器端的动态ip地址,将服务器端的动态ip地址与闪库解析软件的固定ip地址绑定,即可实现动态ip地址的识别,用户端与闪库解析软件建立通讯关系后,即可实现与服务器端的通讯。当服务器端的动态ip地址发生变化后,可以再通过闪库解析软件获取最新的服务器端的动态ip地址。
83.在本实施例中,与远程单片机烧写系统建立通讯关系,包括:远程单片机烧写系统连接闪库解析软件的固定ip地址,由闪库解析软件获取服务器端的动态ip地址,闪库解析软件的固定ip地址与服务器端的动态ip地址绑定,进而服务器端与远程单片机烧写系统正常通讯。远程单片机烧写系统可通过wifi模块连接闪库解析软件的固定ip地址。
84.实施例5:
85.本实施例公开了一种自评分的远程实验方法,对于远程单片机烧写系统,主要包括以下步骤:
86.与服务器端建立通讯关系,获取来自服务器端的0x7f单片机烧写启动信号、单片机烧写文件和用户信息中的实验序号;
87.当收到来自服务器端的0x7f单片机烧写启动信号后,停止给双mcu实验系统供电;
88.2秒左右后,重新给双mcu实验系统供电,远程单片机烧写系统与双mcu实验系统供电采用串口通讯的方式,远程单片机烧写系统将0x7f单片机烧写启动信号传输给双mcu实验系统,由双mcu实验系统读取单片机烧写文件,实现单片机烧写文件的烧写。
89.以及将来自服务器端的实验序号下发给双mcu实验系统,由双mcu实验系统根据实验序号,启动相应的评分程序,对用户远程实验操作进行监控。
90.本实施例的远程单片机烧写系统通过配置的wifi模块来与服务器端建立通讯关
系,具体的:通过wifi模块连接闪库解析软件的固定ip地址,由闪库解析软件获取服务器端的动态ip地址,闪库解析软件的固定ip地址与服务器端的动态ip地址绑定,进而远程单片机烧写系统与服务器端正常通讯。
91.为了实现wifi模块可以与服务器端进行通讯,本实施例的远程单片机烧写系统自带一单片机,用于配置wifi模块,让wifi模块可以与服务器端进行通讯,由单片机获取0x7f单片机烧写启动信号。
92.本实施例的远程单片机烧写系统通过继电器实现对双mcu实验系统的通断电,实现双mcu实验系统的冷启动,该继电器受单片机控制,当单片机接收到0x7f单片机烧写启动信号后,控制继电器关闭,即远程单片机烧写系统停止给双mcu实验系统供电,关闭2秒后,单片机控制继电器打开,远程单片机烧写系统继续给双mcu实验系统供电。
93.如图2所示,h2为远程单片机烧写系统给双mcu实验系统供电和串口通信进行烧写单片机烧写文件的端口,k1为继电器,用于负责通断双mcu实验系统的供电。u2为wifi模块,负责通过wifi网络与服务器端通信。u1为单片机,用于负责初始化wifi模块和控制继电器对双mcu实验系统进行冷启动。双mcu实验系统的冷启动是开始烧写程序的必要操作。
94.实施例6:
95.本实施例公开了一种自评分的远程实验方法,对于双mcu实验系统,主要包括以下步骤:
96.双mcu实验系统进行冷启动,当收到0x7f单片机烧写启动信号后,从远程单片机烧写系统的端口读取单片机烧写文件,实现单片机烧写文件的烧写。
97.以及当收到0x7f单片机烧写启动信号后,根据来自远程单片机烧写系统的实验序号,启动相应的评分程序,对用户远程实验操作进行评分,得到实验评分。
98.将错误码上传至远程单片机烧写系统,由远程单片机烧写系统将错误码发送至服务器端。本实施例将单片机烧写文件远程烧写至双mcu实验系统中,双mcu实验系统就可以正常工作了,所有功能与虚拟或仿真不同,为真实的工作状态。
99.本实施例的双mcu实验系统包括第一mcu和第二mcu;其中,第一mcu用于实现实验功能,即第一mcu从远程单片机烧写系统的端口下载单片机烧写文件,进行单片机烧写文件的烧写。第二mcu用于实现单片机实验情况的评分和记录功能,具体的,第二mcu根据实验目的对实验端口进行检测,得到实验情况信息;此处的实验目的根据实验序号得到。例如,当实验端口在某一时刻不正常时,将该实验情况进行记录,并通过远程单片机烧写系统的wifi模块发送给服务器端,由服务器端将实验情况信息发送给用户端,解决了远程无法监督,用户应付实验的情况,通过对实验情况进行记录,另一方能根据记录的实验情况及时了解实验进行情况。若用户为学生,另一方为指导老师,指导老师可通过查阅存储在服务器端的实验情况信息,判断操作实验的学生是否存在不良行为,此处的不良行为包括抄袭作弊行为或缺席行为。即,指导老师可查阅整个实验期间的实验情况信息,若某个学生没有进行实验操作,那么判定该学生缺席,或若某个学生只进行了一两次实验操作,但最终的实验评分为高,则有理由判定该学生存在抄袭作弊行为。当实验端口在某一时刻不正常时,将该实验情况进行记录,并通过远程单片机烧写系统的wifi模块发送给服务器端,由服务器端将实验情况信息发送给用户端。
100.现对远程单片机烧写系统与双mcu实验系统之间的通讯建立,说明如下:
101.如图3所示,第一mcu对应串行口1,第二mcu对应串口2。
102.串口初始化,设置串行口1和串口2的波特率,串行口1与远程单片机烧写系统的wifi模块通信,串口2与评分系统通信。
103.wifi模块第一次初始化,设置wifi模块为sta模式,发送wifi ssid和pwd连接wifi网络,连接远程闪库解析软件的固定ip地址,成功连接后进入透传模式。
104.当服务器端的ip地址发生变化时,wifi模块进入第二次初始化,通过wifi网络向闪库解析软件发送服务器端ip查询命令,由闪库解析软件获取服务器端的动态ip地址,将服务器端的动态ip地址发送给wifi模块,wifi模块连接最新的服务器端的动态ip地址,而后进入透传模式。
105.以上步骤后,第一mcu、远程单片机烧写系统和服务器端均可以相互正常通信。
106.对于第二mcu,通过串口2将实验序号传递给评分系统,由评分系统根据实验序号,启动相应的评分程序,当实验操作结束后,评分结束,得到实验评分,第二mcu通过远程单片机烧写系统将该实验评分上传至服务器端,再由服务器端将实验评分上传至用户端,用户端对该实验评分进行显示。
107.现对评分系统的工作过程进行如下说明。
108.评分系统启动后,开始检查端口p0数据,以流水灯实验为例,程序过程如下:
109.等待远程命令,检查到实验序号,比如实验1的指令,开始进入检测流程;
110.循环检查端口,首先判断流水灯的方向是否正确,如果错误,记录错误代码0x01同时检测是不是每一个端口都有数据,如果都有数据,则中断退出检查程序,否则循环一定次数比如2000次后退出;循环结束后退出且没有检测到端口数据,记录错误代码0xaf。如果检测到端口有部分没有数据,记录错误代码0x04;进入定时程序,每1ms循环程序一次,超过循环一定次数后退出,循环检查端口的数据,如果每个端口都有数据就退出循环。如果因为超过循环次数退出,记录错误代码0x08。循环结束后,检测循环次数,根据检测次数和每次的时间间隔,判断流水灯的间隔时间是否正确,超出一定范围,为错误,记录故障码0x02。串口发送故障码到串口2,双mcu实验系统通过wifi模块发送给服务器端。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1