-
Notifications
You must be signed in to change notification settings - Fork 182
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
simple_message: add serial smpl_msg_connection implementation #107
Comments
Hey, |
Nothing has changed here. AFAIK there is no serial transport available.
a serial transport would probably be the way to go. If you'd like to see whether you can avoid changes on the
|
Thank you for the fast answer. I want to refer to the following post: Are there any other requirements to establish a connection from the robot to the serial port. |
Unfortunately I have no experience with anything older than IRC5. If your controller has serial ports available and those can be used in RAPID programs, you should be able to change the RAPID code in Connect your controller to your ROS PC using serial cables (you'd need two: one for state, the other for trajectories). At that point, you could run
But no guarantees.
That would probably require some reading of the RAPID manuals and/or finding examples. What's important is to be able to send and receive binary data over those serial ports. |
Thank you so far. I will do the following steps
This can take some time, but i will keep you informed. btw. Do you have any information about the open_abb_serial_logger. Maybe a copy of the repository which i could use. |
thanks. I'd be interested to hear whether this works.
no. I never used the package, nor cloned it. |
@muesgit: did you get |
@gavanderhoorn Good morning. I am still working on the connector for the serial port cause mine was a little bit faulty. But I hope soon I can give u more information. |
@gavanderhoorn Hi, I have a short feedback today for you. I managed to use com2 to print a RAPID Programm to the HyperTerminal via print command from the roboter terminal. The bad thing is that it seems that I need "Extended Functions" to even use the commands "open, close etc." for sending serial sending and receiving serial Information. |
Ah, so you can't use your serial port(s) for any data transfer from/in RAPID programs? That's going to be a requirement in order to be able to use something like |
Well in principle it is working, since we could use the print button from the s4 to send data to the hyper terminal, but i think for "real" communication i need to order these so called extended functions from abb. I contacted them and lets see if they provide me the disk. |
yes, that's what I was referring to. The HW works, but you can't write to it nor read from it without some additional RAPID infrastructure. |
@gavanderhoorn |
Nice. Good to hear. I'd suggest though we now move the discussion to abb_driver as I believe you're going to use the work-around I described in #107 (comment). That's different from implementing a proper serial transport for |
I wonder why not using rosserial. Should be possoble to install rosserial_python on a raspi and communicate via a rosserial enabled pc instead of using netcat to translate the protocoll to tcp? |
I'm not sure I understand what you're suggesting. SimpleMessage does not use the The purpose of |
I understand... I was suggesting this option as an alternative to send serial information from the pc to the robot and back. |
Just to clarify: You could of course write a version of As to your suggestion to use another PC: you could definitely use an RPi and run Now "pretend" the RPi is in fact the ABB controller and configure If things work, the |
@muesgit: have you been able to get things to work? |
Hey, actually not but up to now i was able a to establish a simple connection between the S4 controller and my pc from RS232 to TCP and vice versa via Arduino as a middleman (Arduino + Ethernet Shield + RS232/TTL Board). |
Note that you'd still need to update |
Ive checked the Rapid Codes from the rawbytes (is there another way to pack data, for example in a buffer? maybe an array of data) and ofcourse all the socket functions which shouldnt be necessary after redefining to use serial I also have to check if i have the possiblity to get the Multitasking option for our old robot. |
Its pretty hard to get the Multitasking option atm as it also takes too much time. With that workaround i could at least do some kind of offline pathplanning without using the floppy harddrive to transmit the code. |
This starts to get off-topic too much for this issue. I'm willing to discuss alternative approaches, but please use a more appropriate venue for it. Seeing as you're working with ABBs, I'd suggest the issue tracker of |
Thats true, sorry for that. I will open a new topic there and describe the problem. The new topic is here now: |
For robots that lack ethernet (TCP/IP) networking support.
Especially older robots often don't support socket comms, even if they have a network interface. Using serial ports can then be a good alternative.
It shouldn't be too hard to get this to work. Potential issue could be the lower bandwidth of serial connections: most older controllers don't go above 19k2 or even 9k6 baud. Typical
robot_state
traffic (at ~40 Hz) is something like 4 to 5 KB/sec.The text was updated successfully, but these errors were encountered: