新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于AVR单片机的发电机负荷缸多路遥控开关量数字遥控并编解码的实现

基于AVR单片机的发电机负荷缸多路遥控开关量数字遥控并编解码的实现

作者:时间:2013-12-07来源:网络收藏

因为在负荷端和遥控台的连接距离接近100 m,超过串口RS 232信号可靠传送到达的距离,我们增加了SN75LBC184 RS 232/RS 485串行通信转换器芯片,SN75LBC184输人和单片机TXD、RXD管脚相连,单片机PD2引脚控制SN75LBC184芯片的收发使能端实现收发功能的转换,用两芯的电缆连接负荷缸端和遥控台端SN75LBC184芯片的输出端口,实现了单片机串口信号的远距离传送和电路的半双工工作,具体连接如图3所示。基于AVR单片机的发电机负荷缸多路遥控开关量数字遥控并编解码的实现

3 串行通信协议及编程实现

3.1 串行通信协议

在从遥控台端单片机和负荷缸被控端单片机的通信中.我们选择通信协议为:9600波特率,8个数据位,1位停止位,无奇偶校验。
基于AVR单片机的发电机负荷缸多路遥控开关量数字遥控并编解码的实现

遥控台端单片机和负荷缸被控端单片机之间的通信方式采用主从定时请求应答方式,遥控台端单片机始终具有主动发送权,定时向负荷缸被控端单片机发送设置16个开关状态命令帧和读取回传指示灯开关状态命令,负荷缸单片机处于被动状态响应状态。

3.2 数据帧格式

在负荷缸的控制中,当带负荷运行时,意外的主开关分闸信号等同于突卸负荷,特别是当满负荷运行时意外的主开关分闸信号等同于的瞬时100%突卸负荷,将导致发电机出现飞车现像,严重的损害发电机的性能,因此信号传输的可靠性非常重要,在本系统中遥控台到负荷缸的命令帧格式采用如图4所示的方法进行通讯握手和数据校验保证遥控台和负荷缸端的数据的可靠传输和控制。

基于AVR单片机的发电机负荷缸多路遥控开关量数字遥控并编解码的实现

其中:@为帧开始标志符,$为帧结束标志符,D1,D2分别为第一、第二组8个开关状态组成的1个字节的无符号字符,V1,V2为其对应校验码,这里采用其按位取反。当D1,D2,V1,V2都为ASCII码0xff时为请求负荷缸端回传开关状态命令帧,负荷缸端单片机响应命令回传负荷缸端开关状态命令帧的格式为:基于AVR单片机的发电机负荷缸多路遥控开关量数字遥控并编解码的实现

其中:@为帧开始标志符,D1为8个回传指示灯开关状态组成的1个字节的无符号字符,V1为D1按位取反较验码,$为帧结束标志符。

3.3 通讯握手和数据较验编程实现

在单片机编程中,为了方便命令帧数据较验,我们在单片机程序中设置了30个字节的堆栈空间用于缓存接收的数据,负荷缸端单片机程序流程图如图5所示,该程序在实际工作中运行稳定,满足工作的要求。

基于AVR单片机的发电机负荷缸多路遥控开关量数字遥控并编解码的实现

4 结 语

本文利用的高速运行速度,采用74SL244缓冲器和74SL273锁存器扩展单片机I/O口,实现了多路远程遥控开关量采集监控和数字信号编码,采用了握手和数据较验的方法保证了数据的可靠传输和控制,用SN75LBC184 RS 232/RS 485串行通信转换芯片实现了串行通信信号的远距离传送。本文的方法也可用于其他开关量信号采集和自动化控制场所,实现设备的智能监控。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭