- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
plc函数说明
源文件的作用
mainwindow.cpp 图形界面的程序,包括界面的样子,以及用户操作后的响应,和ECC返回给上位机的信息的显示。
Server。Cpp 一个TCP的网络服务器。下行按照ECC的命令格式要求,利用socket.cpp
向ECC发送TCP的数据包。上行接收ECC的响应,控制ecc.cpp 和 tn.cpp 修改相关状态。
socket.cpp 一条TCP连接。作用就是在这条连接上发送和接受数据
ecc.cpp 每一个集中器的信息。
tn.cpp 每一个终端的信息。
ask.cpp每一个定时任务的具体信息。
所以他们之间的关系大致如下
下行:用户操作-》Mainwindow-》server-》socket-》GPRS网络或者以太网
下行:网络-》socket-》server-》mainwindow-》显示在界面上
其中ecc,tn,和task在 mainwindow和server 这两个文件中均会被调用,用于在上位机记录设备的状态信息
上位机发送命令基本流程:
1,MainWindow上,用户选择相应命令
2,命令传递给Server,Server按要求填写相应帧格式,并选择相应的Socket写入命令
3,Socket发送命令给相应的集中器
上位机接收响应基本流程:
1,Socket接收响应,判断命令合法性
2,Server接收响应,翻译响应的内容,根据这些内容修改Ecc,Tn,Task的状态信息
3,MainWindow根据Ecc,Tn,Task的状态信息,更改图形界面的显示内容
命令没有及时响应的判断:
1,发送命令时,Server根据命令修改Ecc的工作状态
2,Ecc开始计时,这里选择60s。如果是组播或者广播,则计时为60s*节点个数
3,接收对应Ecc工作状态的响应时,计时停止。如果一直没有响应,则界面显示超时。
在程序中经常出现含有slot的函数名(我自己命名的),他们都是槽函数,他们不是在程序中显式调用的,而是被事件触发的,类似单片机的中断。程序中的connect函数用于指定“信号”和“槽”的关系。
3在mainwindow中的函数
以下函数用于界面的排版和显式
MainWindow(QWidget *parent = 0);主界面
void createDialogForReport(void);报告界面
void createDialogForTask(void);任务界面
以下函数均是相应事件的槽函数
public slots:
void slotconnect(void); void slotdisconnect(void); void slotsetting(void);按下connect disconnect setting后的响应,
void slotnewConnect(Ecc*);接受到来自ecc的tcp连接请求的响应
void slotnewDisconnect(Ecc*);tcp连接中断后的响应
void msgFromServer(Ecc*,Tn*,int,QByteArray);接受到来自server。Cpp的ecc的响应后的反应,其对应的信号是server的msgToGui函数,在界面上显示相关内容
void slotnoResponse(QString,int);“命令没有响应”的响应:显示超时的对话框
void sloteccChanged(QTreeWidgetItem*,int); 切换ecc时的反应:将对应ecc的信息全部显示在界面上
void slotTimeToCheck();1小时到了,广播查询命令
下面均是按下相关命令按键后的反应,一般有四步
1,得到ECC和TN
2,得到命令
3,改变 4,启动msgToEcc函数(该函数的作用是发命令)
void on_reset_clicked();
void on_allowToReport_clicked();
void on_report_clicked();
void on_download_clicked();
void on_remove_clicked();
void on_domain_clicked();
void on_oneOn_clicked();
void on_allOn_clicked();
void on_oneOff_clicked();
void on_allOff_clicked();
void on_oneCheck_clicked();
void on_allCheck_clicked();
void on
您可能关注的文档
最近下载
- 天然气长输管道安装施工风险危害清单.docx VIP
- 【国家标准】NBT 31008-2019 海上风电场工程概算定额.pdf VIP
- 2025年通信工程施工企业安全生产三类人员考试(项目负责人·B证)历年参考题库含答案详解(5套).docx VIP
- 1例慢性心功能不全急性加重的护理查房.pptx VIP
- 习题-9-能量代谢与体温.doc VIP
- 四大家鱼养殖技术规范(DB44-T 483-2008).docx VIP
- 下载PDF文件(1429K).PDF VIP
- 科研项目经费报销细则_附件.doc VIP
- 中医治疗心悸课件最新完整版本.pptx VIP
- JB∕T 7175.6-2015 滚动直线导轨副 第6部分:额定动载荷和额定寿命.pdf
原创力文档


文档评论(0)