聯(lián)系人:藍(lán)艷萍
手機(jī):15359298293
QQ:2259678687
郵箱:lanlan@szcxdcs.com
地址:深圳市寶安區(qū)西鄉(xiāng)街道臣田社區(qū)寶民二路東方雅苑2層B39
分類: 摩托羅拉MOTOROLA
聯(lián)系人:藍(lán)艷萍
手機(jī):15359298293
QQ:2259678687
郵箱:lanlan@szcxdcs.com
地址:深圳市寶安區(qū)西鄉(xiāng)街道臣田社區(qū)寶民二路東方雅苑2層B39
MVME172-323A |
MVME172-323A |
以下的Python腳本程序會(huì)監(jiān)聽「/head/tilt/smooth」的訊息,朝「/head/tilt」發(fā)布許多訊息,好讓伺服機(jī)轉(zhuǎn)到目標(biāo)角度之前慢慢加速,再慢慢延遲旋轉(zhuǎn)。當(dāng)訊息抵達(dá)「/head/tilt/smooth」時(shí)一定會(huì)呼叫「moveServo_cb」。這個(gè)回調(diào)函式會(huì)從-90到+90度之間每10度產(chǎn)生1個(gè)數(shù)值,追加到角度數(shù)組當(dāng)中?!竤in()」會(huì)取這個(gè)角度,數(shù)值從-1到+1慢慢增加。該數(shù)值加1之后,范圍就會(huì)變成0到+2,再除以2之后, 0到+1的曲線數(shù)值數(shù)組就完成了。然后再看看m數(shù)組當(dāng)中,每當(dāng)發(fā)布訊息時(shí),就會(huì)稍微前進(jìn)一點(diǎn),范圍在r之內(nèi),直到1*r或是全范圍為止。
#!/usr/bin/env python
from time import sleep
import numpy as np
import rospy
pos = currentPosition + mi*r
print “pos: “, pos
pub.publish(pos)
sleep(0.05)
currentPosition = targetPosition
print “pos-e: “, currentPosition
pub.publish(currentPosition)
def listener():
if __name__ == ‘__main__’:
listener()
想要測試伺服機(jī)順暢的動(dòng)作,就要啟動(dòng)Python腳本,將訊息發(fā)布到「/head/tilt/smooth」,這樣一來即可檢視順暢的動(dòng)作。
$ ./servoencoder.py
$ rostopic pub -1 /head/tilt/smoothstd_msgs/Float32 1
$ rostopic pub -1 /head/tilt/smoothstd_msgs/Float32 0
ROS當(dāng)中的名稱也可以重新測繪。只要將「/head/tilt/smooth」重新測繪為「/head/tilt」,程序就能向伺服機(jī)發(fā)出命令,而不會(huì)意識(shí)到正弦曲線的數(shù)值在變化。
迎向未來
雖然這里只說明了簡單的伺服機(jī)控制,ROS卻有更多功能。假如想要知道妨礙機(jī)器人的東西是什么,不妨使用已經(jīng)支持ROS的Kinect。就算導(dǎo)航堆棧使用這項(xiàng)數(shù)據(jù)測繪,也可以饋送簡短的Python腳本,讓伺服機(jī)動(dòng)起來,命令機(jī)器人追蹤附近的物體。沒錯(cuò),眼睛真的會(huì)追逐物體。
Terry是室內(nèi)用機(jī)器人,搭載2個(gè)Kinect。一個(gè)專門用來導(dǎo)航,另一個(gè)則用于深度測繪。Terry使用6個(gè)Arduinos,能夠從用了ROS的網(wǎng)絡(luò)接口或PS3遙控器直接操作。
Houndbot是設(shè)計(jì)成要在戶外使用。里頭有遙控器、GPS、羅盤和ROS耳形控制器。后續(xù)計(jì)劃要搭載導(dǎo)航用的PS4雙鏡頭攝影機(jī),因?yàn)镵inect不能在陽光下使用。這臺(tái)機(jī)器人重量為20公斤。還可以追加了懸吊系統(tǒng),為此需要自行制造鋁合金客制化零件。
Festo SMTO-4-PS-S-LED?-24B SMT0 Proximity Switch Sensor
Sunx Beam Sensor NX-51T 51 B0
Allen Bradley 889P-M3DC-H IDC Field Attachable 3 pin Ma
GE Definite Purpose Contactor CR353AD3BH1 40a 3p
Thermal Switch 06EA 502 283 fap factory parts
KELE DC power supply DCP-1.5-W wentech 1.5w 24v 24vdc
Chicago Cylinder Corp DP-12-7-B 112202 Pneumatic piston
Balluff BES-517-1603-QN?-S-5 Inductive Proximity Sensor
Vickers 1 922863 Seal Kit bosch Cylinder piston gasket
Sentrol 2302A-L 2302 Curtain Door Magnetic Contactor ma
Allen Bradley 1492-CB1G050 manual Motor Controller 5amp
Allen Bradley 1492-CB1G040 manual Motor Controller 4amp
Allen Bradley 1492-CB1G030 manual Motor Controller 3amp
Allen Bradley 1492-CB1G020 manual Motor Controller 2amp
Allen Bradley 1492-CB1G010 manual Motor Controller 1amp
A FCI HYLUG YA25L4BOX 1/0 AWG CU Wire 3/8 stud 518350 c
Chemtrol Nibco CPVC Ball Valve U51TB 1" schedule 80 PVC
Ingersoll Carbide SNH-34-001 IN2040 5820252 0822833058
National Instruments 763061-01 GPID cable 1.1m wire X2
Master Pneumatic MRS100-6 Filter Regulator Silencer Rec
Idec Control Unit ASLW212620DG ASLW 0213 HW-G10 Green S
PepperL & Fuchs OBS3000-18GM70-?E5-V1 82407 OBS4000
Powervolt DC power supply 24vdc BVA-24DS4.8 control
Yale Hoists 643954800 Dormeyer ind 2256-M-1 relay Coil
Sandvik Carbide Insert S-SNGU 650-X1 P12C
IFM Efector II5746 IIB3015-BPKG/US?-100-DPS Inductive Pr
Banner T18AW3RQ1 opposed mode sensor right angle
Siemens 3SE6 605-2BA magnetic switch reed safety 1s
Siemens 3SE3 180-1C position switch micro sensor