关键词:
RT-Thread
嵌入式网络控制器
可编程逻辑控制
PID控制
数据采集系统
摘要:
当代世界正面临着新一轮的工业改革,嵌入式技术也必须与互联网相结合,并进一步趋于智能化。顺应这一大趋势,设计了一种基于RT-Thread的嵌入式网络控制器,软件设计可分为下位机和上位机两个部分,旨在为用户提供一个二次开发平台,实现对小型设备进行实时控制和数据采集。下位机软件设计方面,将下位机软件框架分为四层:用户层、API层、RT-Thread层、驱动层。针对以往嵌入式开发过程可移植性差、扩展性低、实时性不高的缺点,本文基于RT-Thread实时操作系统进行设计,应用多线程的工作模式,提高了嵌入式控制器的可移植性和实时性。另一方面,针对用户二次开发的需求,为用户封装了函数库,设计API供用户调用。其中,针对用户不了解梯形图编程语言的情况,设计了可编程逻辑控制API,设计数字量输入输出接口,采用节点连接逻辑识别的方式,使用户可以直接对该API进行参数设置,最终在控制器上实现自己的电路逻辑。另外,采用系统时钟进行高精度时间采样,实现PID算法控制,用户调用PID算法控制API,配置参数后即可实现对输出量的实时调节,实现自动控制。此外,为了顺应下一代互联网络趋势,同时满足用户可以通过网络实时采集控制器数据的需求,本文设计网络通信模块支持IPv4/IPv6协议,设计嵌入式网络控制器为基于TCP协议的服务器端,采用并发多线程服务器模型进行软件设计,实现了多个客户端可以通过网络通信对控制器的数据采集与监测。上位机软件设计方面,为了满足用户实时观测、存储下位机采集数据结果的需求,选用C#语言,采用Winform框架,引入Iocomp外部工业控件库,设计了上位机软件UI界面。另外,为了给用户提供直观数据观测功能与便捷的数据处理功能,本文实现了数据显示与图形显示功能,通过数据的实时发送和接收实现了数据的动态与静态分析。此外,采用SQLite嵌入式数据库进行数据存储,实现了数据的再处理功能,最终用户可以通过上位机实现对控制器外的接设备进行数据采集和监测。最后,对嵌入式网络控制器进行下位机的可编程逻辑控制功能、上位机数据采集监测功能以及整体的网络通信功能进行测试,测试结果验证了本文设计的嵌入式网络控制器的实际应用价值。