新闻中心

EEPW首页>嵌入式系统>设计应用> 基于AT89C52的CAN总线分布式测控系统的研制

基于AT89C52的CAN总线分布式测控系统的研制

作者: 时间:2012-02-20 来源:网络 收藏

数据采集模块的工作原理:各类传感器采集到数据后将0—5V的模拟量传送到ADC0809,0809将转换成的数字量传给89C52,最后单片机将采集到的数据送到SJA1000通过收发器82C250传上总线,完成数据采集工作。

(3)控制模块

是一个带有CAN通信功能的隔离型控制器。该模块有一个数据输入点,可以是命令或其他信号,有一个模拟量输出,供输出执行机构是连续变化的控制系统使用,例如控制步进电机;还有一路是数字量输出,供执行机构是两位式的控制系统使用,例如开关设备。这个控制器可以单独作为一个调节器使用,因为在该模块上提供了完整的显示窗口和操作按钮,可以设定温度设定值、PID调节参数等运行过程中可以显示被控对象的PV值和SV值。该模块可以根据设定的控制点及升、降的时间实现自动调节。带有CAN通信口,可以与微机实现通信,也就是说控制模块可以接入CAN网络系统。通过上位机实现对多个节点上的控制模块设定各控制点的上下限控制点、PID值、实现时间等控制参数,并实时记录各控制器的测量值,描绘出变化曲线,供实验人员对实验结果进行分析。如图4所示。

4系统软件设计

(1)通讯模块

测控系统的通信软件分为3部分:CAN初始化、数据发送和数据接收。

①CAN初始化

其主要是设置CAN的通信参数。需要初始化的寄存器有:模式寄存器(PeliCAN模式)、时分寄存器、接收代码寄存器、屏蔽寄存器、总线定时寄存器、输出控制寄存器等。需要注意的是,这些寄存器仅能在复位期间可写访向,因此,在对这些寄存器初始化前,必须确保系统进入了复位状态,并且系统中各CAN控制器的总线定时寄存器的初始化字必须相同。

②数据发送

现场的各传感器把环境多参数的检测信号(数字量、模拟量、开关量)进行转换处理后,发向CAN控制器的发送缓冲区,然后启动CAN控制器的发送命令,此时CAN控制器将自动向总线发送数据,不再需传感器的微控制器进行干预。若系统中有多个传感CAN控制器同时向总线发送数据,则CAN控制器通过信息帧中的标识符来进行仲裁,标识符数值最小的CAN控制器具有对总线的优先使用权。

③数据接收

整个温室微机测控系统中的CAN控制器检测到总线上有数据时会自动接收总线上的数据,存入其接收缓冲区,并向89C52微控制器发送接收中断,启动中断接收服务程序,89C52通过执行中断接收服务程序,从CAN控制器的接收缓冲区读取数据,并对其进行进一步处理工作。

(2)监控模块

集成了所有的数据采集、参数设定、数据统计分析等功能。同时,为了实现操作人员对生产过程的人工干预,如修改给定值、控制参数和报警限等,添加了参数的修改功能;为了建立人机信息联系,并且能将各节点传输来的数据以图形、图表或其它动态方式显示出来,本系统可以使用任何具有DDE(DynamicDataExchange)接口的MMI(Man-Machineinterface)软件;为了更好的管理各种数据,采取了组态控制方式,能够接收来自MMI软件以及用户软件的DDE连接请求,并将该请求传递给通信驱动部分,由通信驱动转换为通信信号通过传输媒体传递给智能模块的固化软件。并将模块的应答作为DDE操作的结果返回给MMI软件及用户软件。

5结论

将先进的现场总线技术(CANBUS)应用于智能测控系统,大大提高了系统的可靠性;自主开发了符合国际标准的基于单片机的智能节点,不仅大量节约了资金,而且可以购置通用的同类设备,可节约大量的研发费用;基于工控机的上位机提供了良好的人机界面,使操作更加方便,直观。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭