java实现计算机与omron plc串口通信

java实现计算机与omron plc串口通信

ID:5271462

大小:255.49 KB

页数:4页

时间:2017-12-07

上传者:U-1387
java实现计算机与omron plc串口通信_第1页
java实现计算机与omron plc串口通信_第2页
java实现计算机与omron plc串口通信_第3页
java实现计算机与omron plc串口通信_第4页
资源描述:

《java实现计算机与omron plc串口通信》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

·84·工业仪表与自动化装置2010年第1期Java实现计算机与oMRONPLC串口通信吴兴军.胡汉春(北京西动车所;西南交通大学机械工程学院,成都610031)摘要:OMRONCJ系列PLC在工业自动化领域中应用广泛。PLC与计算机串口通信在分布式控制系统、数据采集系统等方面得到充分应用。通过PLC串口硬件配置,端口参数设置,PLC串口程序设计,Java串口包的设置和Java计算机端串口通信程序编写实现计算机与PLC的串口通信。关键词:PLC;分布式控制系统;串口通信;中图分类号:TN91文献标志码:A文章编号:1000—0682(2010)01—0084—03SerialcommunicationbetweencomputerandOMRONPLCrealizedbylanguageofJavawuXingjun,HUHanchun(MechanicalSchoolofSouthwestJiaotong(,Chengdu610031,China)Abstract:OMRONCJseriesPLCiswidelyusedintheindustrialautomation.SerialcommunicationbetweenPLCandcomputerisextensivelyusedindistributedcontrolsystem,dataacquisitionsystemandSOon.Byhardwareconfiguration,portSparameterallocation,PLCprogramforserialcommunicationde—sign,settingforJavaserialcommunicationAPIanddesigningserialcommunicationprogramontheCOB—puterhand,thispapershowamethodofserialcommunicationbetweencomputerandPLCwithlanguageofJava.Keywords:PLC;distributedcontrolsystem;serialcommunication控制方法及数据的设备的网络,实现高速的Devi.0引言ceNet通信。可编程序控制器(PLC)是一种专门为工业环境2PLC串口与Java语言串口功能下应用而设计的工业控制计算机,具有抗干扰能力强、可靠性高、体积小等显著优点。PLC广泛运用于2.1PLC串口硬件设置工业及其他领域,它的串行通信功能在分布式控制cJ系列PLC的CPU单元设置有一个RS232C系统、数据采集系统等方面已经得到了充分应用。端口,用于连接编程设备、通用外部设备、可编程终Java语言在工业控制网络、电力系统自动化等领域端或者上位机等。RS232C端口为一个9针的D型中运用已越来越来广泛,利用Java语言实现PLC与插座,图1为PLC的RS232C端口与普通计算机计算机串口通信,可以将Java多线程等特点运用于RS232端口之间的连线图。PLC组成的控制系统中。计算机RS一232端口PLCRS一232C端口信号脚号脚号信号1OMRONCJ系列PLC简介CDl1OMRONCJ系列PLC是欧姆龙公司生产的小RD2X2SDSD33RD型机。CJ系列PLC采用模块化设计,CPU单元、链ER41厂4RSSG5L5CS接单元、I/O单元、A/D单元、D/A单元及通信单元DR66等可以供用户根据实际需求配置。同时它具有高速RCS78]78总线性能,使用国际标准的DeviceNet构筑包容不同CI9●一9SG图1PLC与计算机串口连线图收稿日期:2009—05—18作者简介:吴兴军(1980),男,硕士,北京西动车运用所。2.2PLC串口通信时数据帧的格式 2010年第1期工业仪表与自动化装置·85·命令格式.STUP为通信端口参数设置指令。指令中参数响应格式.c用于指定通信端口。S为源字起始字,后面S—S回巫压亟圃=+9十个字对端口的通信方式、波特率数据长度、奇图2PLC数据帧格式偶校验、启动位、停止位等进行设置,最后该指令将设置存贮在PLC内部设置区。串口通信时数据帧的格式如图2所示。每帧必TXD为数据发送指令。s为发送数据首字地须以字符“@”开头,机号是上位机用于识别所连接址,C为控制字,用于指定通信端口等,N为发送字PLC的号码,指定为00~31(BCD码),识别码为两节数。当串口初始化完成后,就可以通过TXD指令个字节,FCS为两个字节,“”和CR码为终端。在来发送数据。响应中包括两个字节的结束码。命令/响应最大帧RXD是数据接收指令,S为接收数据贮存的首的长度为131个字节,每帧超过131个字节时必须字地址,C为控制字,用于指定通信端口等,N为接将帧分割后再发送,其中响应时会自动分割帧。收字节数。当PLC本身已把接收的数据放于数据2.3Java串口通信功能介绍缓冲区,使用RXD指令就是把存于数据缓冲区的数Sun的J2SE中并没有直接提供串行通信协议据读出。的开发包,而是以独立的jar包的形式在网上发布,如图4所示对PLC的串口进行设置。其中串即comm.jar,称之为JavaCommunicationsAPI,它是口通信选择为内置的RS232C端口(即CJ系列PLCJ2SE的标准扩展。COmB.jar分别提供了对常用的的CPU单元内置串口),通过HR00对串口进行设RS232器串行端口和IEEE1284并行端口通信的支持。置。在发送数据时,要发送数据的首字地址为DM与eomm.ja17一起的还有两个重要的文件,区0100单元,共发送10个字节,具体格式由HR01win32com.dll和javax.eomm.properties,前者提供了中的内容设定。接收数据存储区域首字地址为DM供comm.jar调用的本地驱动接口,后者是eomm.ja/"区0150单元,共接收1O个字节,格式由HR02中内的类配置文件。应用时首先将COmB.jar复制到\lib容设定。同时程序在发送数据前对发送数据区的内\ext目录,再将win32com.dll复制到应用程序运行容做相应的设置,接收完数据后对接收到数据进行目录,然后将javax.eomm.properties复制到\lib目处理。图中指令前加“@”表示微分指令。录。3PLC与计算机串口通信的Java语言实现在分布式控制系统中,当CJ系列PLC作为De—viceNet主站,可以由串行通信口实现上位机与主站之间的通信,上位机实现系统管理,cJ系列PLC控制现场设备。利用cJ系列PLC高速总线功能实现对现场设备的可靠控制,同时由上位机与PLC通信,实现对整个系统的高效管理。在实现的过程中,PLC一端利用其编程语言(梯形图)编制串口通信程序,在上位机一端利用Java语言实现串口通信功能。3.1PLC串口通信指令与参数设置图4PLC串口通信设置用于CJ系列PLC串口通信的指令如图3所3.2Java上位机串口初始化不。按照上文提到的方法配置comm.jar包后,定义一个Seriallnit类作为本类库与其他应用程序的接口。在该类中定Seriallnit中构造方法以及初始化串口,从串口读取数据,往串口写入数据以及关闭串STUP指令TXD指令RXD指令的函数。具体介绍如下:图3PLC串口指令publicbooleanInitialize() ·86·工业仪表与自动化装置2010年第1期函数初始化所指定的串口并返回初始化结果。如果初始化成功返回true,否则返回false。初始化publicvoidWfitePo~()的结果是该串口被Seriallnit独占性使用,并且设置本函数向串口发送数据。串口参数。如果串口被成功初始化,则将得到输入输出流。并且打开一个进程读取从串口传人的数据f0r(inti=0;i0){in.read(k1);只SPSerialPortEvent.DATAAVAILABLE:if(kl[0]<0)—{k1[0]=((byte)(0x80+(byte)k1System.out.println(“有数据到达”);[0]));}Try{rS.putmessage((char)kl[0]);//将串口接ReadPort();//调用串口读取函数从收到数据写入接收缓冲区串口读取数据}(下转第91页) 2010年第1期工业仪表与自动化装置·9l·轴承间的油膜而发生放电。放电会使润滑油的品质(2)将发电机励磁机侧油膜短接(即ab点短加速劣化,放电的电弧会使转子轴颈和轴瓦烧出麻接),将发电机汽机侧油膜短接(即cd点短接),用点,烧毁瓦面,严重时会造成发电机运行事故。电压表测量发电机励磁机侧轴瓦对地电压即ae点电压,可检测绝缘垫对地绝缘情况,当

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭