北岛夜话
原创工业智能控制领域(PLC、单片机/嵌入式、机器人、通信、机器视觉)的技术及经验分享。
文章545 浏览8636502

S7-1200与S7-200 Smart的S7通信(2)-指令编程

前面的文章我们介绍了S7-1200与S7-200 Smart进行S7通信(S7 Communication)所需要的硬件环境及硬件组态的配置。今天这篇文章,我们来介绍下如何编程来实现两者之间的S7单边通信。

cover.png

本例程使用TIA博途(Portal)V13进行编程。S7-200 Smart的CPU ST40作为服务器(Server),S7-1200 的CPU 1215C作为客户端(Client)。我们仅需要在CPU1215C一侧进行配置和编程。

打开TIA博途(Portal)V13,添加通信所需要的DB块:DB1和DB2。

DB1是CPU1215C发送到ST40的数据块,如下图:

add_DB1.png

DB2是用来接收ST40的数据块,如下图:

add_DB2.png

在DB1和DB2中分别添加100个字节的数据;

为了能保证通信正常进行,需要修改DB1和DB2的属性。取消【优化的块访问(Optimized block access)】的勾选,如下图:

DB_Property.png

接下来进行S7通信指令的编程。可以新建一个FB/FC用来存放S7通信指令,本例程我们直接将指令写到组织块OB1中。

在右侧的指令列表中找到S7通信指令PUT和GET,如下图:

S7_instruction.png

PUT指令用来将本地数据发送到服务器端(ST40);GET指令用来从服务器端(ST40)获取数据并保存到本地;

首先,我们从指令框中拖拽PUT指令到OB1中,系统会自动提示添加PUT指令的背景DB块"PUT_DB",如下图:

put_DB.png

新添加的PUT指令如下图:

PUT_COMMAND1.png

该指令各引脚(参数)的含义如下:

PUT_command_description.PNG

在PUT指令中,我们使用M0.0的上升沿来触发数据发送;通信伙伴S7-200 Smart ST40的VB0~VB99对应DB1.DB0~DB99;发送数据存放在CPU 1215C的DB1的前100个字节中;

完整PUT指令如下图:

PUT_COMMAND.png

同样的方法将GET指令拖放到OB1中。

GET指令各参数的含义如下面的表格:

GET_command_description.PNG

在GET指令中,我们使用M0.1的上升沿来触发数据接收;通信伙伴S7-200 Smart ST40的VB100~VB199对应DB1.DB100~DB199;接收的数据存放到CPU1215C的DB2的前100个字节中。

完整GET指令如下图:

GET_COMMAND.png

好了,关于S7-1200与S7-200 Smart的S7单边通信就先介绍到这里。欢迎扫描下方的二维码关注我们的微信公众号。

founderchip.png

S7-1200与S7-200 Smart的S7通信(2)-指令编程

来源:本站|   大小:573 KB|   下载次数:2137次

取消

感谢您的支持,欢迎常来看看!

扫码支持
一点动力,多少随意

打开支付宝扫一扫,即可进行扫码打赏哦

发表评论