s7-200与PT650D如何通讯

s7-200与PT650D如何通过自由协议进行通讯

问题补充:
LD     SM0.1
MOVB   16#69, SMB30
MOVB   16#B0, SMB87
MOVB   16#0A, SMB89
MOVB   10, SMB90
MOVB   20, SMB94
ATCH   INT_0:INT0, 9
MOVB   150, SMB34
ATCH   INT_1:INT1, 10
ATCH   INT_2:INT2, 23
ENI

INT0
LD     SM0.0
DTCH   10
RCV    VB200, 0


INT1
LD     SM0.0
MOVB   16#06, VB99
MOVB   16#52, VB100
MOVB   16#45, VB101
MOVB   16#41, VB102
MOVB   16#44, VB103
MOVB   16#0D, VB104
MOVB   16#0A, VB105
XMT    VB99, 0

INT2
LD     SM0.0
ATCH   INT_1:INT1, 10
上面程序无返回信息
PD650D 协议
READ<CR><LF>
返回 ST,GS,1234KG,<CR><LF>

最佳答案

发一个通用的通讯程序:

MAIN:

LD          SM0.1

MOVB      XXX  ,    SMB30        //根据和对方约定的波特率,字符格式等设定

MOVB      16#9C,  SMB87        //允许接收信息,使用SMB90值检察空闲状态,定时器是信息定时器  ,  超过SMW92值停止接收      

MOVW      +80,      SMW92        //根据报文长短,波特率及从站响应的快慢设定,这个时间要小于接收中断(INT3)里定时中断的时间。

MOVW      +0,        SMW90

MOVB      200,      SMB94            //SMW94    最大接收字符数,这里无用,但必须要设置。

ENI

LD          SM0.1

ATCH      接收:INT3,  9            //传输完成中断

MOVB      150,  SMB34

ATCH      发送:INT2,  10          //定时中断

发送:

LD          SM0.0

DTCH      10

XMT        VB100,  0

接收:

LD          SM0.0

RCV        VB200,  0

MOVB      250,  SMB34

ATCH      发送:INT2,  10

1  本程序只适用于单从站的问答式规约(包括modbus)。该程序为主站程序。

2  发送的数据放置在数据块,比如读取从站地址为16#12的寄存器的数据。校验提前算好,减轻PLC负担。

VB100  16#8  16#12  16#03  16#00  16#0A  16#00  16#02  16#E6  16#AA

3  不用考虑起始字符  结束字符等等,以下是通讯流程图,不论从站有无故障,询问不受影响。

4  9600波特率,从站回复13字节

5  校验程序可以放在主程序里,

有时间再发一个多从站的程序,程序大小和这个基本程序不变。

提问者对于答案的评价:
ok

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc315745.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月1日
下一篇 2020年11月1日

相关推荐

  • 如何让模拟量以一定的斜率增大

    S7200中,如何让模拟量输出以一定的斜率不断增大,开环控制,不是闭环控制,只要能产生斜坡就行 最佳答案 这个简单 LD    &…

    SIMATIC S7-200 2020年11月5日
  • S7-200模拟量的问题

    S7-200用EM231模块采集的模拟量信号,是否对应过来的数据是0-32000,这些数据是否都是线性对应到我需要 的数据,换个说法就是,用指令库函数就可以直接转换。我想…

    SIMATIC S7-200 2017年6月8日
  • 请教工业以太网模块CP243-1的问题

    我要用PLC  S7200  CPU 226 CN 和触摸屏MP 270B 10&quot…

    SIMATIC S7-200 2021年7月5日
  • 关于电脑和plc连接问题

    一个很小的程序运行后电脑就和plc不能连接了?程序是对226通讯口o的特殊寄存器数据更改。LD     Always_On:SM0…

    SIMATIC S7-200 2021年7月4日
  • PLC 罗茨泵

    您好!      我是PLC新手。有这样一个实验:用PLC控制罗茨泵对炉内抽真空。   &…

    SIMATIC S7-200 2021年7月5日
  • 电池卡

    请教,s7200为了保存数据一个方案就是添加电池卡,请教添加电池卡时需不需要进行设置,另外一个电池卡大概需要多少钱?谢谢! 最佳答案 添加电池卡不需要进行设置,插到 电池…

    2021年7月5日
  • cp243-1通过PC Access连S7-200

    我现在做的项目里用cp243-1通过PC Access连224xpcn,机器里的连接位置cp243-1和224xpcn之间隔了两个模拟量扩展模块。现在的问题是cp241-…

    SIMATIC S7-200 2021年7月5日
  • 请教汽液热交换器控制编程的问题

    请问一个汽液热交换器的编程,就是有一个闭环控制的有温度控制器传感器调节阀和热交换器,是蒸汽和液体的混合,有蒸汽阀和液体阀,要求使其保持在给定的温度数值下,温度高加液体,温度低加热蒸…

    SIMATIC S7-200 2020年10月31日
  • 一健起停

    前背有没有一健起停的方法,有的话告诉我,RS复位优先怎么用 最佳答案 最简单的RS复位优先指令单键控制启停程序:LD     I0…

    SIMATIC S7-200 2020年11月1日
  • S7-200组网采用何种电缆

    大家好,我现在使用两台TD400C控制一个S7-200,请问通讯电缆选择什么型号的,是不是需要组网,S7-200手册上说使用RS232/485多主站通讯电缆,但是它只有两个头,怎么…

    SIMATIC S7-200 2021年7月5日