無(wú)線智能小車控制系統(tǒng)
實(shí)物照片:
本文引用地址:http://www.ex-cimer.com/article/149032.htm概要:
本系統(tǒng)由上位機(jī)控制軟件,無(wú)線串口收發(fā)模塊,子機(jī)控制主板,子機(jī)機(jī)械執(zhí)行部分等構(gòu)成。由上位機(jī)(電腦)控制軟件或人作出決策,把命令通過串口傳給半雙工無(wú)線串口通訊模塊發(fā)射,又由子機(jī)的無(wú)線通訊模塊接收命令,交給子機(jī)MCU處理后由機(jī)械執(zhí)行機(jī)構(gòu)執(zhí)行。同時(shí)子機(jī)MCU可采集傳感器數(shù)據(jù),再通過無(wú)線通訊反饋給上位機(jī),上位機(jī)可通過此數(shù)據(jù)做出決策。
技術(shù)細(xì)節(jié):
(1)上位機(jī)軟件
使用VB開發(fā)。通過MSComm控件來發(fā)送和接收串口數(shù)據(jù),通過對(duì)子機(jī)發(fā)來數(shù)據(jù)的處理或由人控制作出決策,然后再通過串口發(fā)送出去。
例程:手動(dòng)控制小車運(yùn)動(dòng)的簡(jiǎn)易程序:
DimxAsInteger
DimsAsString
PrivateSubForm_Keydown(KeyCodeAsInteger,ShiftAsInteger)
Ifs>Chr(KeyCode)Then
MSComm1。Output=Chr(KeyCode)
s=Chr(KeyCode)
Label1。Caption=Label1。Caption+Chr(KeyCode)
EndIf
EndSub
PrivateSubForm_KeyUp(KeyCodeAsInteger,ShiftAsInteger)
MSComm1。Output=0
s=0
Label1。Caption=Label1。Caption+0
EndSub
PrivateSubForm_Load()
MSComm1。CommPort=1
MSComm1。Settings=4800,N,8,1
MSComm1。RThreshold=1
MSComm1。SThreshold=1
MSComm1。PortOpen=True
EndSub
PrivateSubMSComm1_OnComm()
SelectCaseMSComm1。CommEvent
CasecomEvReceive
Label1。Caption=MSComm1。Input
CasecomEvSend
EndSelect
EndSub
(2)無(wú)線通訊PC端
本系統(tǒng)使用的無(wú)線通訊模塊是上海桑博電子科技有限公司生產(chǎn)的STR-18型微功率無(wú)線通訊模塊。它的調(diào)制方式是FSK半雙工,波特率為1。2Kbit–9。6Kbit。提供8個(gè)可選信道,頻率為433-919MHz,發(fā)射功率10mW,靈敏度-105dBm,工作電壓3。6–5。5V,可支持TTL/RS232/RS485三種電平標(biāo)準(zhǔn),有效距離400M。
此模塊雖然支持3種電平標(biāo)準(zhǔn),但是實(shí)驗(yàn)表明當(dāng)1方為RS232電平,一方為TTL電平時(shí)是沒有辦法正常傳輸數(shù)據(jù)的。所以在信號(hào)從上位機(jī)到達(dá)無(wú)線模塊之前,先要進(jìn)行電平轉(zhuǎn)換。這里使用的是MAXIM公司生產(chǎn)的MAX232電平轉(zhuǎn)換芯片,把電腦的RS232電平轉(zhuǎn)換為TTL電平后再交給無(wú)線模塊發(fā)射。
此模塊并不自帶電源穩(wěn)壓的功能,所以又使用了一片7805給MAX232芯片與無(wú)線通訊模塊供電。電平轉(zhuǎn)換與電源穩(wěn)壓被做在了一塊小的電路板上,固定在了無(wú)線通訊模塊后面。
由于串口盜電并不是非常穩(wěn)定,功率也不大,所以這里使用了9V堆疊式干電池給前者單獨(dú)供電。
(3)無(wú)線通訊子機(jī)端
無(wú)線通訊子機(jī)端所采用的無(wú)線通訊模塊和上位機(jī)端是一樣的。由于先前已經(jīng)作過電平轉(zhuǎn)換,所以單片機(jī)可以直接通過無(wú)線通訊模塊收發(fā)數(shù)據(jù)。子機(jī)端的模塊配置必須與上位機(jī)通訊模塊相同,既波特率相同,信道相同,數(shù)據(jù)位相同才能正常通訊。模塊與單片機(jī)共用一個(gè)5V穩(wěn)壓電源。
(4)子機(jī)控制端
目前本系統(tǒng)所采用的子機(jī)控制電路為本人設(shè)計(jì)的WUDI-T型機(jī)器人控制主板。它使用ATMEL公司生產(chǎn)的ATMEGA16芯片作為主控芯片,ST公司生產(chǎn)的L293橋芯片作為馬達(dá)控制芯片。它有電源穩(wěn)壓,LCD顯示,PWM控制2路馬達(dá),一個(gè)三極管驅(qū)動(dòng),1個(gè)LED,一個(gè)按鈕,一個(gè)蜂鳴器,8位拓展口等功能。串口通訊的引腳在WUDI-T上被預(yù)留了出來。WUDI-T型機(jī)器人控制主板是一個(gè)簡(jiǎn)易的控制主板,它可以完成所有的基本任務(wù)。
子機(jī)控制端的程序使用BASCOMAVR來編寫。
(5)子機(jī)執(zhí)行端
子機(jī)執(zhí)行端為一輛電動(dòng)小車。它的動(dòng)力來源為2個(gè)直流馬達(dá),電源為4節(jié)干電池或充電電池。前方有一個(gè)萬(wàn)向輪,底盤為單面覆銅板所制。
(6)子機(jī)傳感器
目前并沒有添加傳感器的需要。如果添加,可以采集地面顏色,聲音,環(huán)境光等環(huán)境變量。甚至可以安裝無(wú)線攝像頭在子機(jī)上。傳感器暫時(shí)不在研究范圍內(nèi)。
發(fā)展和改進(jìn)的方向:
本系統(tǒng)應(yīng)為多機(jī)器人同時(shí)由一臺(tái)上位機(jī)控制,同時(shí)由上位機(jī)來協(xié)調(diào)他們的運(yùn)動(dòng)和任務(wù)。通訊方面即上位機(jī)為主站,單片機(jī)為從機(jī),通過主從機(jī)制來完成通訊。
評(píng)論