USS协议和自由口协议通讯问题(急!)

各位大侠,请问USS和自由口通讯有什么区别?能否同时用USS协议和自由口通讯协议通讯呢?上位机是研华IPC,一台CPU226,4台6RA70。我需要在IPC机与PLC间用自由口通讯,而PLC与6RA70间用USS协议通讯。自由口通讯我已经有一定的掌握,但是USS协议还是第一次接触。我不用USS协议软件包能编写通讯程序吗?两个通讯之间要怎样安排时序?编程应该注意些什么?

问题补充:
请问有PLC和6RA70用USS协议通讯的简单实例吗?能否给我提供一份

   两个通讯之间的时序该怎么设置呢?
   STW及HSW值在什么地方修改?

最佳答案

与PC通讯是自由口通讯,所谓自由口是指自己定义通讯协议。你可以自己定义。
 USS协议是西门子的驱动器的一种通讯协议。用于对西门子的变频器,直流调速器等的控制。定义了对驱动器的参数读写的格式,过程数据的读写等。详细可看MM440使用大全或标准驱动装置通讯手册。
 西门子网站有USS与变频器通讯的资料,我可以发份给你.
 USS通讯介绍:
 USS 协议(Universal Serial Interface Protocol 通用串行接口协议)是SIEMENS 公司所有传动产品的通用通讯协议,它是一种基于串行总线进行数据通讯的协议。USS协议是主-从结构的协议,规定了在USS 总线上可以有一个主站和最多30 个从站;总线上的每个从站都有一个站地址(在从站参数中设定),主站依靠它识别每个从站;每个从站也只对主站发来的报文做出响应并回送报文,从站之间不能直接进行数据通讯。另外,还有一种广播通讯方式,主站可以同时给所有从站发送报文,从站在接收道报文并做出相应的响应后可不回送报文。
   
   使用USS 协议的优点
   1. 对硬件设备要求低,减少了设备之间的布线,
   2. 无需重新连线就可以改变控制功能,
   3. 可通过串行接口设置或改变传动装置的参数,
   4. 可实时的监控传动系统 
   常用USS 主站的性能对比:
   USS 通讯硬件连接
    1. 条件许可的情况下,USS 主站尽量选用直流型的CPU(针对S7-200 系列)
    2. 一般情况下,USS 通讯电缆采用双绞线即可(如常用的以太网电缆),如果干扰比较大,可采用屏蔽双绞线。
    3. 在采用屏蔽双绞线作为通讯电缆时,把具有不同电位参考点的设备互连会在互连电缆中产生不应有的电流,从而造成通讯口的损坏。要确保通讯电缆连接的所有设备,或是共用一个公共电路参考点,或是相互隔离的,以防止不应有的电流产生。屏蔽线必须连接到机箱接地点或9 针连接的插针1。建议将传动装置上的0V 端子连接到机箱接地点
    4. 尽量采用较高的波特率,通讯速率只与通讯距离有关,与干扰没有直接关系。
    5. 终端电阻的作用是用来防止信号反射的,并不用来抗干扰。如果在通讯距离很近,波特率较低或点对点的通讯的情况下,可不用终端电阻。多点通讯的情况下,一般也只需在USS 主站上加终端电阻就可以取得较好的通讯效果。
    6. 当使用交流型的CPU22X 和单相变频器进行USS 通讯时,CPU22X 和变频器的电源必须接成同相位的。
    7. 建议使用CPU226(或CPU224+EM277)来调试USS 通讯程序。
    8. 不要带电插拔USS 通讯电缆,尤其是正在通讯过程中,这样极易损坏传动装置和PLC 的通讯端口。如果使用大功传动装置,即使传动装置掉电后,也要等几分钟,让电容放电后,再去插拔通讯电缆。
   
   USS 通讯的编程
    USS 协议是以字符信息为基本单元的协议,而CPU22X 的自由口通讯功能和CPU31XC-PTP 的RS422/485 串行口正好也是以ASCII 码的形式来发送接收信息的。
   
   利用这些CPU 的RS485 串行口的通讯功能,由用户程序完成USS 协议功能,可实现与SIEMENS 传动装置简单而可靠的通讯连接。
   
    1. USS 点对点通讯的编程要点:
    a) USS 主站(PLC)与USS 从站(传动装置)之间的通讯是异步方式的,负责与传动装置通讯的工作程序应采用后台工作方式,如何发送接收数据应与控制逻辑无关。用户程序通过改变USS 报文中的STW 及HSW 的值,来控制变频器的启停及改变设定频率值。
    b) 利用发送指令(如XMT,P_SEND,P_SND_RK)发送USS 报文至传动装置,利用接收指令(如RCV,P_RCV,P_RCV_RK)接收变频器返回的USS 报文。同一时刻,只能有一个发送指令或接收指令被激活。
    c) USS 通讯程序包括通讯端口初始化子程序、 BCC 校验码计算子程序、数据发送子程序、数据接收子程序、通讯超时响应子程序、通讯流程控制子程序等。可采用中断响应的方式,也可用查询相应标志位的方式来实现。
    d) 设立发送接收数据缓存区与映像区,用户应通过改变映像区的USS 发送报文值来控制传动装置,或通过读取映像区USS 接收报文中的状态值来判断传动装置的当前状态。以防止因干扰而接收到错误数据而使PLC 做出错误的判断和控制
   
    2. USS 多点通讯的编程要点
   
    a) 控制通讯的基本流程同上述点对点通讯方式
    b) 对各从站的控制应采取轮询方式,轮询程序同样也是后台工作方式工作的。
    c) 根据对各台传动装置控制任务的轻重,在PLC 数据区内建立一个从站地址表,按该地址表轮询各传动装置。采用间接寻址的编程方式,可大大节省CPU 的程序空间。
    d) 轮询地址表示例虽然,USS 协议的实际物理地址只有30 个,但轮询地址表的大小无限制,其有效站地址可以在表中根据实际应用需要反复出现。实际轮询站点数越多,其轮询的间隔时间也越大,而表中站地址重复次数越多,其轮询的间隔时间越小,因此必须为每个传动装置设定适当的通讯超时时间以适应这种轮询间隔。
     e) 不同USS 从站可以有不同的USS 报文结构,如3 PKW + 2 PZD;4 PKW + 4 PZD;0 PKW + 6 PZD 等组合。但整个系统要支持广播方式,则USS 网络中的所有从站都必须有相同的PKW 区才行。
    f) 传动装置对以广播方式发送的指令做出响应后,不再回送报文,因此PLC可以不再进入数据接收状态。

提问者对于答案的评价:
谢谢,很详细,要能有实例就更好了

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午10:38
下一篇 2021年7月5日

相关推荐

发表回复

登录后才能评论