山本と申します.
現在,rosserialのチュートリアルを行っており,自分のPCにarduinoをつないで,
トピックの配信と購読ができました.
しかし,beagleboardという基盤にROSを入れて,arduinoとつないで同じ事をしたのですが,
$ chmod 777 /dev/ttyACM0
$ roscore
$ rosrun rosserial_python serial_node.py /dev/ttyACM0
と入力したところ,
[INFO] [WallTime:253.308384] ROS Serial Python Node
[INFO] [WallTime:253.311558] Connecting to /dev/ttyACM0 at 57600 baud
[ERROR] [WallTime: 270.446860] Lost sync with device, restarting...
と,エラーを返されてしまいます.
何が原因なんでしょうか?
ちなみにarduinoのプログラムの中身は,チュートリアルにあるhallo worldと同じものです.
以下に示します.
/*
* rosserial Publisher Example
* Prints "hello world!"
*/
#include <ros.h>
#include <std_msgs/String.h>
ros::NodeHandle nh;
std_msgs::String str_msg;
ros::Publisher chatter("chatter", &str_msg);
char hello[13] = "hello world!";
void setup()
{
nh.initNode();
nh.advertise(chatter);
}
void loop()
{
str_msg.data = hello;
chatter.publish( &str_msg );
nh.spinOnce();
delay(1000);
}