servo.write(angle);
}
ros::Subscriber
ros::NodeHandle nh;
void setup()
IC600PM503RR常規(guī)IC600PM503RR常規(guī)IC600PM503RR常規(guī)

{
servo.attach(SERVOPIN);
nh.initNode();
nh.subscribe(sub);
}
void loop()
{
nh.spinOnce();
delay(1); }
接下來要設(shè)法透過Arduino在ROS的世界說話。最簡(jiǎn)單的方法是使用機(jī)器人啟動(dòng)檔。雖然以下的檔案內(nèi)容非常簡(jiǎn)單,但是這里要追加啟動(dòng)檔,如此一來即使是非常復(fù)雜的機(jī)器人,也能用一個(gè)指令啟動(dòng)。
$ cat rosservo.launch
$ roslaunch ./rosservo.lanch
rostopic指令可以看出ROS訊息傳送到機(jī)器人的哪個(gè)部位。看了下面的程序代碼就會(huì)發(fā)現(xiàn),「/head/tilt」可以透過Arduino使用。訊息要使用「rostopic」傳送。-1的選項(xiàng)只會(huì)發(fā)布(publish)訊息一次,通知/head/tilt傳送一個(gè)浮點(diǎn)數(shù)。
$ rostopic list
/diagnostics
/head/tilt
/rosout
/rosout_agg
$ rostopic pub -1 /head/tiltstd_msgs/Float32 0.4
SIEMENS6EP1436-3BA00模塊
SIEMENS6ES7331-7KF02-0AB0模塊
SIEMENS6ES7322-5HD01-0AB0模塊
SIEMENS6ES7307-1KA01-0AA0模塊
SIEMENS6ES7315-2EH14-0AB0模塊
SIEMENS6ES7321-1BH02-0AA0模塊
SIEMENS6ES7365-0BA01-0AA0模塊
SIEMENS6ES7331-7KF02模塊
SIEMENS6ES7390-1AF30-0AA0導(dǎo)軌
SIEMENS6ES7315-2EH14-0AB0模塊
SIEMENS6ES7953-8LJ32-0AA0儲(chǔ)存卡
SIEMENS6ES7322-1BL00模塊
SIEMENS6ES7321-1BL00模塊
SIEMENS6ES7392-1AM00-0AA0端子
SIEMENS6ES7392-1AJ00-0AA0端子
SIEMENS6ES7307-1EA01-0AA0電源模塊
SIEMENS6ES7153-1AA03-0XB0模塊
SIEMENS6ES7222-1HF22-0XA0模塊
SIEMENS3TK2827-2BB40配件
Siemens3ZX1012-0RT02-1AA1 輔助觸頭(3RH1921-1HA22)配件
SIEMENSC79459-A1890-A10
SIEMENS6ES7650-1AH62-5XX0
SIEMENS3RT1016-1BB42 24V
SIEMENS3RV2021-1CA15 17-22A
SIEMENS3SB3500-4MD01
SIEMENS6ES7-340-1AH02-0AE0