APP下载

PLC通信技术教学探究

2015-08-20康永泽

中国教育技术装备 2015年13期
关键词:通信技术单片机

康永泽

摘 要 对UART通信技术和IIC通信技术进行探讨,关于PLC通信技术的研究对PLC技术的教学有着很大的促进作用。

关键词 PLC;通信技术;单片机

中图分类号:G712 文献标识码:B

文章编号:1671-489X(2015)13-0130-02

1 前言

在从事专业教学时,用PLC技术去改造接触器—继电器控制,比如一些普通机床的改造,在整个工作中往往还要解决通信问题,掌握PLC与电脑、PLC与变频器、PLC与触摸屏、PLC与PLC之间的通信是很重要的。PLC上的CPU就为单片机,为了增加控制功能和提高实时处理的速度,在PLC中应用16位或32位单片机,PLC与计算机、变频器、触摸屏之间都有通信电缆。还有楼宇消防与安防上的控制器上都采用单片机控制。单片机与外围设备之间的通信很重要,比如温度传感器把温度信号通过通信传给单片机,单片机通过数码管把这个温度数据显示出来,通信技术在单片机系统内起到衔接作用,信号通过通信传递进来。如果没有通信,单片机的功能就被局限了。所以研究PLC的通信是很重要的,有助于从事专业教学。

2 UART的通信

很多PLC教材关于PLC通信这块知识模块没有提及,只要能使用PLC的简单功能就可以了。这样不利于知识拓展,因为要把PLC功能开发与单片机学习结合起来更利于知识的拓展和深入自学。通信技术也是控制工程重要的一个学习模块,要了解控制的框架,然后再一个一个深入。探讨PLC通信技术显得尤为关键,先探讨UART的通信技术。UART通信的并行通信是通信时数据的各个位同时传送,可以实现一个字节的8位同时发送。而串行通信,一次只能发送一位,要发送8次才能发送一个字节。单片机之间UART的通信示意图如图1所示。

比如用串行通信发送00100111字节,要从低位开始发送。通信上有2个引脚,即RXD和TXD引脚,TXD发送信号,RXD接受信号。信号发送持续时间等于波特率分之一,即波特率的倒数。PLC的单片机1与PLC的单片机2的波特率要保持一致才能正常通信。数据发送什么时候开始,又什么时候结束,这如何解决?单片机1接受单片机2发送的数据,不管是提前发送还是延时发送,接受的数据都有可能会错过。什么时候知道数据来了,开始接受第一位。UART的通信技巧:当没有信号发送时,通信线保持高电平,发送完之后也保持高电平。发送数据之前先发送一个低电平,低电平的持续时间也是波特率的倒数。发送8位数据之后,再发送停止位1。发送一个字节8位,实际上发送了10位。多了一个起始位,一个停止位。按0、D1、D2、……、D8、1的顺序发送或接受,如图2所示。

计算机的通信,RS232在工业领域用得多,是9针接口。笔记本电脑都用USB接口了。RS232接口采用的是负逻辑,即-3 V到-15 V的范围为“1”高电平。而TTL/CMOS电平标准是高电平“1”大于2点几伏特。由于电平标准不一样,就用MAX232转换芯片对单片机电压与串口电压做一个转接。如图3所示,MAX232的10脚TXD与9脚RXD到单片机去,MAX232的7脚TO-PC-RX到RS232的2脚,MAX232的8脚TO-PC-RX到RS232的3脚。MAX232的10脚TXD是高电平的时候,7脚TO-PC-RX却输出一个-3 V到-15 V,电脑上输出一个-8 V到-9 V左右。同样的原理可以把-8 V到-9 V转换成高电平。有了USB,USB把UART转换后送给单片机,USB还把单片机信号转换后送给笔记本电脑。有了USB口,不管是台式机还是笔记本电脑,都可以与单片机进行通信。

为了更直观地看到单片机与电脑之间的通信,可以把通信传送的数据在数码管上显示出来。要完成这一任务,就用笔记本电脑一台、KST-51单片机开发板一块、STC89C52RC芯片一块、USB线缆一根、逻辑分析仪一台,KST-51单片机开发板上有数码管。还可以用逻辑分析仪把通信的波形抓出来看看,这样更直观。I0口模拟UART串口通信如图4所示。

学习使用时电脑上安装上三个软件。一个软件是编写程序的KeiL-C51-9.02a,一个软件是下载软件STC-ISP-v4.80。STC-ISP-v4.80是把通信程序下载到单片机,单片机运行显示结果。注意安装下载软件时点右键以管理员身份运行一次,再来安装。第三个软件是单片机驱动软件CH341SER的X64或X86,装哪一个根据操作系统是32位还是16位来选择使用。把软件装好后,打开Keil uVision4编写UART通信程序,通信程序写好后下载到STC-ISP-v4.80中。打开STC-ISP-v4.80的串口助手,选择十六进制发送,十六进制显示,注意COM与下载程序的COM、设备管理器的COM口保持一致,波特率设为9600,数据8位,停止位1位,其他默认。程序主要是实现通信的时序图,并且让串口助手与单片机开发板进行通信。让助手向单片机发送1,单片机返回给串口助手来显示出来,就显示为1。在STC-ISP-v4.80串口助手如果选择用字符格式发送,字符格式显示,这里就要弄懂ASCII字符表格。如字符发送4,那么十六进制显示为多少呢?到ASCII字符表格里去查,字符4对应的十进制是52,52转换成十六进制是34[1]。

3 IIC通信

教学时要进行比较分析,找出各种方法的使用条件与范围,研究通信技术也一样。URAT通信是用于板与板子之间的通信,是一对一通信。而还有板子内部的通信,是多对多的通信,IIC通信就是多对多的通信。IIC通信总线是由数据线SDA和时钟SCL构成的串行总线,IIC通信总线必须要两条线。URAT通信,其波特率是由电脑CPU产生的,是电脑自身的时钟产生的,单片机接受依靠单片机自己的时钟,只管自己接受,不管发送方是什么样的时钟,波特率对了就可以接受了。但是IIC通信总线就不一样了,它的发送与接受需要同一个时钟,发送方与接受方有共同的时钟,即SCL线。SCL线上所有的器件组成一个“线与”的关系,任何一个器件都可以拉低SCL的电平。只有所有器件的时钟为高电平SCL才为高电平。IIC通信有起始信号、数据传输部分、停止信号传输时。SCL为高电平时,SDA才传送数据,数据传输采用时钟脉冲一位一位串行传送方式, 发送器送到SDA线上的每个字节必须是8位长,传送的时候必须是高位在前、低位在后的顺序。传送的时候每个字节需要9个时钟脉冲,第9个时钟脉冲为低时,发送器释放SDA线,接收器把SDA线拉低,以给出一个接受确认位。第9个时钟脉冲高电平期间,发送器收到这个确认位后,开始下一个字节的传送。数据传送时,送出的第一个字节是用来选择从器件的地址的,前7位为地址码,后面一位如果为0就是写,如果为1就是读。当主器件发送完一字节的数据后,接着发出对应于SCL线上的一个时钟认可位,这个时候时钟内的主器件释放SDA线,一字节传送就结束了。起始时序必须SCL保持高电平,SDA从高电平到低电平变化,然后传输BIT7、BIT6、……、BIT1。停止时序,SCL必须是个高电平,SDA有一个从高电平到低电平的变化[2]。

4 总结

搞控制工程的不仅是教好教材,还要不断学习新知识,不断拓展。PLC的教学不仅是教知识,还要教会学生学习搭框架,然后再去自己拓展知识,这样才会深入,越学越有兴趣。PLC控制技术是一门综合性很强的技术,功能的开发在于知道的多和少,所以通信技术的研究利于对PLC的功能不断探究。

参考文献

[1]隋晓红.通信原理[M].北京:北京大学出版社,2007.

[2]黄葆华.通信原理[M].西安:西安电子科技大学,2007.endprint

猜你喜欢

通信技术单片机
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
IODN技术现状及未来发展趋势分析
对数字微波通信技术的研究
Microchip推出两个全新PIC单片机系列