1.PC与欧姆龙CPM1A系列plc的连接
如图1a所示的点对点结构的连接方式,称为1:1HOST Link通信方式。欧姆龙CPM1A系列PLC没有RS232C串行通信端口,它是通过外设通信口与上位机进行通信的,因此CPM1A需配置RS232C通信适配器CPM1-CIF01(其模式开关应设置在“HOST”)才能使用。1:1 HOST Link通信时,上位机发出指令信息给PLC,PLC返回响应信息给上位机。这时,上位机可以监视PLC的工作状态,例如可跟踪监测、进行故障报警、采集PLC控制系统中的某些数据等。还可以在线修改PLC的某些设定值和当前值,改写PLC的用户程序等。
图1 PC与CPM1A系列PLC的连接
a)1:1 b)1:N
如图1b所示的为多点结构的连接方式,称为1:N HOST Link通信方式,一台上位机最多可以连接32台PLC。在这种通信方式下,上位机要通过链接适配器B500-AL004与CPM1A系列PLC连接,每台PLC都要在通信口配一个RS422适配器。利用1:N HOST Link通信方式,可以用一台上位机监控多台PLC的工作状态,实现集散控制。
2.通信协议
OMRON公司CPM1A型PLC与上位计算机通信的顺序是上位机先发出命令信息给PLC,PLC返回响应信息给上位机。每次通信发送/接受的一组数据称为一“帧”。帧由少于131个字符的数据构成,若发送数据要进行分割帧发送,分割帧的结尾用CR码一个字符的分界符来代替终终止符。发送帧的一方具有发送权,发送方发送完一帧后,将发送权交给接受方。
发送帧的基本格式为:
@ |
机号 |
识别码 |
正文 |
FCS |
终止符 |
其中:
@ ——为帧开始标志;
机号——指定与上位机通信的PLC(在PLC的DM6653中设置);
识别码——该帧的通信命令码(两个字节);
正文——设置命令参数;
FCS——帧校验码(两个字符),它是从@开始到正文结束的所有字符的ASCⅡ码按位异或运算的结果;
终止符——命令结束符,设置“*”和“回车”两个字符表示命令结束。
响应的基本格式为:
@ |
机号 |
识别码 |
结束码 |
正文 |
FCS |
终止符 |
其中:
@ ----为帧开始标志;
机号----应答的的PLC号,与上位机指定的PLC号相同;
识别码----该帧的通信命令码,和上位机所发的命令码相同;
结束码----返回命令结束有无错误等状态;
正文——设置命令参数,仅在上位机有读数据时生效;
FCS——帧校验码,由PLC计算给出,计算方法同上;
终止符——命令结束符。
3.PLC的通信设置
通信前需在系统设定区域的DM6650-DM6653中进行通信条件设定,具体内容见表1。
表1 PLC通信设定区功能说明
通道地址 |
位 |
功能 |
缺省值 | |
DM6650 |
00-07 |
上位链接 |
外设通信口通信条件标准格式设定: 00:标准设定(启动位:1位、字长:7位、奇偶校验:偶、停止位:2位、比特率:9600bps) 01:个别设定(由DM6651设定) |
外设通信口设为上位链接 |
08-11 |
1:1链接 (主动方) |
外设通信口1:1链接区域设定 0:LR00-LR15 | ||
12-15 |
全模式 |
外设通信口使用模式设定 0:上位链接 2:1:1链接从动方 3:1:1链接主动方 4:NT链接 | ||
DM6651 |
00-07 |
上位链接 |
外设通信口比特率设定 00:1200bps 01:2400bps 02:4800bps 03:9600bps 04:19200bps(可选) |
|
08-15 |
上位链接 |
外设通信口帧格式设定 启动位 字长 停止位 奇偶校验 00: 1 7 1 偶校验 01: 1 7 1 奇校验 02: 1 7 1 无校验 03: 1 7 2 偶校验 04: 1 7 2 奇校验 05: 1 7 2 无校验 06: 1 8 1 偶校验 07: 1 8 1 奇校验 08: 1 8 1 无校验 09: 1 8 2 偶校验 10: 1 8 2 奇校验 11: 1 8 2 无校验 www.ippipp.com |
| |
DM6652 |
00-15 |
上位链接 |
外设通信的发送延时设定 设定值:0000-9999(BCD),单位10ms |
|
DM6653 |
00-07 |
上位链接 |
外设通信时,上位Link模式的机号设定 设定值:00-31(BCD) |
|
08-15 |
不可使用 |
|
4.通信过程
通信开始先由上位机依次对PLC发出一串字符的测试帧命令。为充分利用上位机CPU的时间,可使上位机与PLC并行工作,在上位机等待PLC回答信号的同时,使CPU处理其它任务。某PLC在接到上位机的一个完整帧以后,首先判断是不是自己的代号,若不是就不予理睬,若是就发送呼叫回答信号。上位机接到回答信号后,与发送测试的数据比较,若两者无误,发出可以进行数据通信的信号,转入正常数据通信,否则提示用户检查线路重新测试或通信失败。