Skip to content
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

Failure when trying to read from serial port #1

Open
danielj195 opened this issue Mar 1, 2020 · 13 comments
Open

Failure when trying to read from serial port #1

danielj195 opened this issue Mar 1, 2020 · 13 comments

Comments

@danielj195
Copy link

Hi,

I am trying to use this ROS driver to command motor position. When I launch the launch file in the readME, I get the error shown in the screenshot below. The motor I have is sdc2160 and I'm using ROS kinetic. Any help would be greatly appreciated!
roboteq_driver_error

@isactornberg
Copy link

Hi,

I am not currently using this driver but I might be able to help anyway. Have you checked that you are connected to the roboteq driver using /dev/ttyACM0?
This seems to be hard coded in the roboteq_motor_controller_driver_node.cpp file so in the case you're not connected to that port you will need to change it in the source file.

Note that there are more critical values encoded in the source files so make sure to have a look before running.

@danielj195
Copy link
Author

danielj195 commented Mar 2, 2020

I think I am connecting using /dev/ttyACM0 because as can be seen in the terminal screenshot, the port is initialized (which means it is somehow able to connect). I looked in that file, but it's difficult to tell what could be causing the process to die

@SyuanLiao
Copy link

Hi,
I meet this error too.
I made the script in controller is empty using Roborun+ and then fixed this error.
The driver node can work now.

@HappySamuel
Copy link

Hi @SyuanLiao

Is that mean the mbs script inside the controller must be emptied in order to use this ROS-driver node?

Best,
Samuel

@SyuanLiao
Copy link

Hi @HappySamuel,
Yes!! All scripts inside the controller must be emptied(clean) from my experiment.
Sorry, English is not my mother tongue.

Best Regards,
Liao

@HappySamuel
Copy link

HappySamuel commented Mar 6, 2020

Hi @SyuanLiao

If that's the case, how shall i control 4 motors with 2 motor controllers to achieve skid steering? Isn't that a mbs script is needed inside the master motor controller in order to control the slave motor controller, which may result unavailable of using this ROS-Driver node?

如果是这样的情况的话, 那么我该如何使用 2 个 motor controller 来控制 4 个 motors 来达成滑移控制? 因为需要在 master 的 motor controller 里安装 mbs 的程式来控制 slave 的 motor controller,对吗?然而安装了 mbs script 的话,岂不是就无法用这个 ROS-Driver node 了?

Best,
Samuel

@SyuanLiao
Copy link

Hi @HappySamuel,
抱歉!我的case是一個controller來控制2個motor, 所以我不知道您的這個狀態的原因,
我是猜測目前的ROS-Driver會對原先將已寫在controller的script進行reading,
然而程式中沒有成功解讀, 也許是type問題, 或是其他原因, 所以才導致程式直接crashed,
因為我之前試過多個開源的robote q的driver, 其中有一個開啟時直接執行了,
我已寫在controller裡的腳本, 所以我才對於這個ROS-Driver的程式有這樣的猜測

@danielj195
Copy link
Author

Hey guys,

I appreciate your help. I ended up just using the API and writing my own program, since we needed to do some custom work. This issue can be closed if no one else needs it.

@marcelopetry
Copy link

Hi guys,

I am having the same issue here!
roboteq_error

The driver is connected to the /dev/ttyACM0, and I do not have any script running in the controller.
I tried in two different computers with ROS Kinetic but no luck.

@SyuanLiao, how did you cleaned the scripts?

Thanks!

@danielj195
Copy link
Author

danielj195 commented Jun 5, 2020 via email

@marcelopetry
Copy link

I've been using this package for quite awhile and it still occasionally dies. If you're not connecting to the port at all, then it might be because the port is closed. Try "sudo chmod 777 /dev/ttyACM0"

On Fri, Jun 5, 2020 at 11:27 AM Marcelo @.***> wrote: Hi guys, I am having the same issue here! [image: roboteq_error] <https://urldefense.com/v3/https://user-images.githubusercontent.com/2048810/83896879-b983d800-a74c-11ea-84b2-93f325cff960.png;!!KwNVnqRv!SvZQTJc6tfCoSEbj5Tld-QMqA4gj3sJS-tO6k1bFO3IhUWtJeVeq-7IWcERh73ou$> The driver is connected to the /dev/ttyACM0, and I do not have any script running in the controller. I tried in two different computers with ROS Kinetic but no luck. @SyuanLiao <https://urldefense.com/v3/https://github.com/SyuanLiao;!!KwNVnqRv!SvZQTJc6tfCoSEbj5Tld-QMqA4gj3sJS-tO6k1bFO3IhUWtJeVeq-7IWcBMROCrN$>, how did you cleaned the scripts? Thanks! — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub <https://urldefense.com/v3/https://github.com/Roboteq-Inc/ROS-Driver/issues/1*issuecomment-639611227;Iw!!KwNVnqRv!SvZQTJc6tfCoSEbj5Tld-QMqA4gj3sJS-tO6k1bFO3IhUWtJeVeq-7IWcCNK2kcy$>, or unsubscribe <https://urldefense.com/v3/https://github.com/notifications/unsubscribe-auth/AENT573R7NJZLMHLQX5A3OLRVEMG5ANCNFSM4K67ZW6A;!!KwNVnqRv!SvZQTJc6tfCoSEbj5Tld-QMqA4gj3sJS-tO6k1bFO3IhUWtJeVeq-7IWcArcmqTo$> .

Hi @danielj195 ,

Thanks for the reply.
Since the serial port was initialised I believe I can open the port. Anyway, I just tried using "sudo chmod 777 /dev/ttyACM0", but I received the same error.

Any other tips?

Best,
Marcelo

@danielj195
Copy link
Author

danielj195 commented Jun 8, 2020 via email

@griz1112
Copy link

If you are running a 2130 you can use this node. https://github.com/rbonghi/roboteq_control I've been using it for around 2 years now with no problems. Not ROS2 compatible. Shouldn't be too difficult to modify for use with other models of controller.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants