Join our "Ask Me About" community webinar on May 20th at 9 AM CET and 5 PM CET to explore cybersecurity and monitoring for Data Center and edge IT. Learn about market trends, cutting-edge technologies, and best practices from industry experts.
Register and secure your Critical IT infrastructure
Machine and Motion Control Forum
Support forum for Machine and Motion Control solutions, including Lexium MC12 and robotics, PacDrive, Modicon PLCs and I/Os, EcoStruxure Machine Expert Twin, … - from design, implementation to troubleshooting and more, by Schneider Electric
Link copied. Please paste this link to share this article on your social media post.
Posted: 2025-02-24 03:12 AM
Hey guys, I am a beginner in industry. And I am doing a little research on PLCs and Motion control etc… I am the type who likes to use analogy to better understand concepts. There’s a project where I will have to use a delta robot to which I want to continuously send a list of coordinates (from a python program) for objects to be picked (example: [{1,2},{2,2.5},{3,3.4}] is a list of x,y coordinates). The list is gonna be sent via some kind of communication. But once the list arrives to the motion control, the latter is gonna control the delta robot’s every movement to pick up the object.
The analogy (which I would like you to correct if wrong) is that PLC and motion control are two different hardwares that can control a system. But PLC differs from motion control the same way a digital pin differs from an analog pin on an arduino board. PLC is for boolean stuff (on/off) while MotionControl is for analog stuff (servo angle). As for both hardwares, they can be programmed using ladder language on the Codesys IDE (the equibalent of python language on the vscode IDE)
Am I thinking right so far?
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2025-02-25 02:16 AM
Hi @lame153 ,
Basically, what you wrote is correct. I would add that in Schneider Electric PLCs and controllers, which are based on Codesys, you can use both ladder programming and structured text programming. This allows you to develop a single program that can execute both logic and motion.
You can use various types of Ethernet-based communication. What you want to do is possible, to send a list of coordinates with a Python script directly to the PLC/controller via a TCP socket.
There are many libraries available that allow you to easily perform motion/robotics operations.
If you haven't already, you can consult Schneider's online help to get an idea -> Machine Expert > V2.2
Regards
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2025-02-25 02:16 AM
Hi @lame153 ,
Basically, what you wrote is correct. I would add that in Schneider Electric PLCs and controllers, which are based on Codesys, you can use both ladder programming and structured text programming. This allows you to develop a single program that can execute both logic and motion.
You can use various types of Ethernet-based communication. What you want to do is possible, to send a list of coordinates with a Python script directly to the PLC/controller via a TCP socket.
There are many libraries available that allow you to easily perform motion/robotics operations.
If you haven't already, you can consult Schneider's online help to get an idea -> Machine Expert > V2.2
Regards
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2025-04-30 05:21 AM
I also need this controller and Python libs. Which Schneider controller and lib can be used to meet this requirement? @Francesco_Begnoni @lame153
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2025-05-09 02:37 AM
Hello @HKTAI
At this page you have an overview of which controllers can use the TcpUdpCommunication library:
Libraries Overview
Machine Expert has an example to create a TCP server: TCP & UDP Communication Example
You can use the following python script to connect to the controller and send a simple string:
#!/usr/bin/env python3
import socket
TCP_IP = '192.168.178.231'
TCP_PORT = 35274
BUFFER_SIZE = 1024
MESSAGE = "AAAABBBB"
# Create socket TCP
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
s.connect((TCP_IP, TCP_PORT))
print('Connected to server')
# Send MESSAGE
s.send(MESSAGE.encode())
except Exception as e:
print("Error:", e)
finally:
s.close()
print('Connection closed')
Link copied. Please paste this link to share this article on your social media post.
Create your free account or log in to subscribe to the board - and gain access to more than 10,000+ support articles along with insights from experts and peers.
With achievable small steps, users progress and continually feel satisfaction in task accomplishment.
Usetiful Onboarding Checklist remembers the progress of every user, allowing them to take bite-sized journeys and continue where they left.
of