280 PLC IO交互控制案例
1 功能效果说明
机械臂收到PLC的IO信号后,会执行一个各个关节回到零位的动作
2 原理说明
由于机械臂的输入输出为5V,PLC的输入输出为24V,所以需要1个5V的继电器和24V的继电器,机械臂的输出端首先会先输出一个信号,使得5V继电器线圈得电,接通常开触点,将24v信号传递给PLC的输入端,PLC采集到有输入信号后,PLC输出端会输出一个信号,使得24v继电器线圈得电,接通常开触点,将GND信号传递给机械臂的输入端,机械臂采集到有输入信号后, 就会执行一个各个关节回到零位的动作
3 硬件链接
整体连接示意图
机械臂的输入与PLC的输出接线
先给PLC接入24V电源
再将PLC的输出接到24V继电器线圈
将将机械臂的GPIO4和GND接到24V继电器的常开触点上
机械臂的输出与PLC的输入接线
将机械臂的5v,GND和GPIO5接到5V继电器的线圈上
再将24V的正极接到5V继电器的COM端上,24V的负极接到PLC的1M端上,NO接到PLC的输入上
4 软件编程
机械臂程序
from pymycobot import MyCobot,PI_PORT, PI_BAUD
import time
import RPi.GPIO as GPIO
mc=MyCobot(PI_PORT, PI_BAUD)
GPIO.setmode(GPIO.BCM)
GPIO.setup(18, GPIO.OUT)
GPIO.setup(4, GPIO.IN)
GPIO.output(18,1)
while 1:
if GPIO.input(4)==0:
mc.sync_send_angles([0,0,0,0,0,0],50)
break
else:
pass
GPIO.output(18,0)
PLC程序