课程中心
HOME
课程中心
正文内容
外部plc编程 如何使用PLC向电脑发送数据?RS485帮你解决
发布时间 : 2024-11-24
作者 : 小编
访问数量 : 23
扫码分享至微信

如何使用PLC向电脑发送数据?RS485帮你解决

说到通讯大家都觉得很难,觉得学起来没有头绪,其实我刚看到通讯的时候也是这样的感觉,资料找了一大堆都是理论,看来看去总感觉无从下手,最后终于搞懂后才发现,其实学不懂的主要原因并不应该用难来形容,而是这个东西它太复杂了,想要一次全部看懂消化是不太可能的事情,只有分步骤将这个复杂的知识一点点的进行拆分,循序渐进的进行理解,才能最终将这个复杂的知识掌握。

上一篇文章我首先给大家普及了一下通讯的基本原理(到底什么是通讯),什么是RS485,首先帮助大家先对RS485通讯建立一个基本的概念。本文我们就从通讯中最简单的步骤,数据的发送(PLC向电脑发数据)向大家讲起。

1、实验工具

第一要告诉大家我们这篇文章中要用到的工具。

1. S7-200CPU 1个(型号无所谓,最好有两个通讯口)

图1-1

2. 串口调试软件

图1-2

3. Usb转485转换接头1个(RS232转RS485接头也可)

图1-3

4. 9针接头公头1个

图1-4

5.两芯电缆

图1-5

2、实验流程

实验目的:从PLC向电脑发送一个字节的数据。

实验操作:用S7-200PLC向电脑发送一个字节的数据,通过串口调试软件接收,由于现在的电脑都没有RS485通讯接口,因此我们要使用Usb转485转换接头才能保障电脑可以接收到来自PLC的数据,另外接线要注意9针头的3脚接Usb转485接头的信号"+",8脚接Usb转485接头的信号"-"

3、自由口模式

说到程序的编写首先大家必须了解S7-200的自由口模式,由于S7-200的默认通讯方式是PPI通讯,因此不能自由收发数据,如果想自由收发数据,就必须先将S7-200的通讯接口设置为自由口模式,控制S7-200自由口的是特殊位寄存器SMB30和SMB130。其中SMB30是控制CPU通讯口0的,SMB130是控制通讯口1的,当然如果只有一个通讯端口就只能使用SMB30这个特殊位寄存器了。下面我们一起来看看这8个位,分别表示什么含义如图 3-1所示。

图 3-1

1) 0 、1位: 协议选择

mm:

00 = 点到点接口协议(PPI/从站模式)

01 = 自由口协议

10 = PPI/主站模式

11 = 保留(缺省是PPI/从站模式)

2) 2、 3 、4位:自由口波特率设置

bbb:000 = 38400bps

001 = 19200bps

010 = 9600bps

011 = 4800bps

100 = 2400bps

101 = 1200bps

110 = 115200bps

111 = 57600bps

3) 5位:每个字符的数据位

d:

0 = 8位/字符

1 = 7位/字符

4) 6 、7位:效验选择

pp:

00 = 不效验

01 = 偶效验

10 = 不效验

11 = 奇效验

这里还要和大家补充一个概念,在通讯的过程中每次发送与接收的最小单位是字符而不是位,1个字符通常包括1个起始位表示字符的开始,1个停止位表示字符的结束,一个奇偶效验位用于验证字符错对,和8个或者7个数据位用于传递信息。这里奇偶效验位可有可无,数据位通常情况下是8个位也就是1个字节,因此如果一个字符包含奇偶效验位通常是11个位,不包含奇偶效验位则是10个位。

通过上面对自由口模式的介绍,如果我们在S7-200CPU的通讯端口0使用自由口模式,通讯速率为9600bps传输的字符不要奇偶效验位,那么我们就必须将SMB30中的数据配置成00001001如图 3-2所示换算成16进制就是16#9

图 3-2

4、程序编写

在开始编写程序之前,我们首先要掌握S7-200发送指令的使用。

图4-1

XMT发送指令有两个管脚,TBL和PORT。

PORT:通讯端口编号,如果用0端口则写0,如果用1端口则写1.

TBL:定义发送缓冲区的起始地址和缓冲区的大小,如果TBL中写VB100,VB100中存放1,则发送缓冲区是VB101,发送数据时将VB101中的数据发送出去。如果VB100中存放2,则发送缓冲区为VB101和VB102,发送数据时将VB101、VB102的数据发送出去。

下面我们来看程序的具体写法。

图 4-2

图 4-2所示的程序就是一个最简单的发送程序,首先用SMB30将通讯口0定义为自由口,通讯速率9600bps,然后定义VB101为发送缓冲区(因为VB100中存放的是1),通过SM0.5将VB101中的16进制的CC以1秒钟为单位发送给电脑。最终我们电脑将会以1秒为单位接收到PLC发送的字符CC如图 4-3所示。

图 4-3

作者:技成培训网(马乐)

版权为技成所有,未经同意盗取必究!

ABB机器人外部PLC选择机器人程序

1)在外部PLC定义好机器人启动,停止信号并在机器人内部做好关联后,通常还希望通过plc发送程序号到机器人,机器人执行对应程序

2)一般PLC通过发送组信号到机器人

3)在机器人建立组信号

4)控制面板-配置-signal

5)此处举例建一个虚拟组输入

6)

7)对应也建立一个组输出,作为反馈给PLC

8)主程序如下:

结束!!!

相关问答

plc连接外部模拟量过程?

PLC连接外部模拟量的过程需要先确定所需的模拟量输入输出模块,然后将其插入到PLC的相应插槽中。接下来,需要将模拟量信号传输线路与模块连接,然后通过PLC编程...

plc如何允许外部读写数据?

PLC可以通过不同的方式来允许外部读写数据,其中一种常见的方式是通过使用通信模块,例如以太网,Modbus,Profibus等。这些通信模块可以与外部设备进行通信,并...

plc编程接线方法?

1.PLC编程接线方法有多种。2.首先,常见的接线方法是使用继电器进行控制。继电器可以通过接线板或者插座进行连接,然后通过导线将继电器与PLC的输入和输出端...

modbus通讯怎么对应plc输入输出?

在Modbus通信中,PLC的输入和输出可以通过Modbus寄存器进行对应。具体的对应方式如下:离散输入(DiscreteInput):PLC的离散输入可以通过Modbus的离散输入寄...

倍福plc连接外部模拟量过程?

倍福PLC连接外部模拟量需要以下步骤:首先,选择符合PLC输入规范的模拟量信号源并进行信号调节;其次,将模拟量信号导入PLC输入端口,并配置PLC输入端口为模拟...

急求学长学姐告知PLC程序的调试方法及步骤?申请方

1、检查接线、核对地址。要逐点进行,要确保正确无误。可不带电核对,那就是查线,较麻烦。也可带电查,加上信号后,看电控系统的动作情况是否符合设计...

PLC模拟量外部怎么接线?

1.确定plc模块的模拟量输入类型,包括电流输入、电压输入等。根据实际情况选择合适的外部连接方式。2.连接传感器或信号发生器的输出信号到plc模拟量输入端...

台达PLCdvp-32EH外部电路怎么接线?如何接?

1、用导线将输入端L、N及地线接线柱分别于交流电源插座的三个插孔相连。2、从输入公共端S/S引出导线和输出端标有24V接线柱相连。3、将按钮开关一端连在PLC...

plc多地控制的启动停止如何接线?

同一设备多点控制起动条件相同的即或逻辑可以外部并联再接IN,停止一样(使用常开,停止=1=STOP)。停止要串联,启动并联,这个既可以在PLC外部做,也可以在PLC...

三菱d700变频器用PLC外部控制15速外部接线RHRMRL怎么接,求大师指教?

RHRMRL最多实现8个段速的设置。若果你写错了,我可以指导你。RHRMRL最多实现8个段速的设置。若果你写错了,我可以指导你。

 赴韩整容平台  法国持刀袭击事件 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部