• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于STM32的巡檢機(jī)器人的設(shè)計(jì)與實(shí)現(xiàn)

      2022-10-31 06:00:54王妍力
      電子制作 2022年18期
      關(guān)鍵詞:原理圖遙控單片機(jī)

      王妍力

      (濟(jì)南信息工程學(xué)校,山東濟(jì)南,250103)

      0 引言

      眾所周知,工業(yè)生產(chǎn)線管道較長,存儲(chǔ)罐多,各種閥門數(shù)不勝數(shù),在生產(chǎn)運(yùn)行過程中可能會(huì)造成能量與物質(zhì)的意外逸散,產(chǎn)生安全事故。大部分工廠運(yùn)維的主要任務(wù)就是實(shí)施對(duì)這些管道、閥門等設(shè)備進(jìn)行檢測、維護(hù),以免出現(xiàn)生產(chǎn)事故。尤其是化工生產(chǎn)線的很多生產(chǎn)工作區(qū)域是危險(xiǎn)和有毒的,工作人員不能長時(shí)間停留,導(dǎo)致工作進(jìn)度緩慢,效率低等問題。綜上所述,工業(yè)生產(chǎn)線急需一種遠(yuǎn)程遙控的巡檢機(jī)器人。

      1 系統(tǒng)的總體設(shè)計(jì)

      本機(jī)器人的底盤采用金屬雙驅(qū)履帶車,12V 12Ah鋰電池供電。該設(shè)計(jì)由4部分組成,第一部分為視頻監(jiān)控部分:利用攝像頭采集現(xiàn)場視頻圖像,通過圖像發(fā)射單元將現(xiàn)場圖像傳送到后臺(tái)顯示屏上,方便操作員判斷分析現(xiàn)場,調(diào)整機(jī)器人的前進(jìn)方向。第二部分為化工環(huán)境采集發(fā)送模塊,通過溫濕度傳感器SHT20和光照傳感器采集化工現(xiàn)場環(huán)境變量,將采集到的數(shù)據(jù)通過STM32整合后再利用EDP協(xié)議經(jīng)過ESP8266發(fā)送到云平臺(tái)上,作為數(shù)據(jù)的保存,方便工程師的分析。第三部分為車體控制通信部分,采用大功率的NRF24L01作為遙控信號(hào)發(fā)射模塊,首先開發(fā)簡單,成本低,體積小,傳輸效率較高,現(xiàn)一款較為成熟的模組。第四部分為后臺(tái)遙控通信部分,其控制方式采用搖桿式傳感器,單片機(jī)利用ADC采集到搖桿的信號(hào),將需要執(zhí)行的命令由NRF24L01發(fā)出去,OLED是為了監(jiān)視其通信狀態(tài)。接收控制端接收到相應(yīng)的信號(hào),由單片機(jī)處理后分配給下級(jí)執(zhí)行,完成遙控控制[3~5]??蚣軋D如圖1所示。

      圖1 系統(tǒng)整體設(shè)計(jì)框架圖

      2 硬件電路設(shè)計(jì)

      2.1 主控模塊

      該機(jī)器人工作環(huán)境復(fù)雜,需要時(shí)時(shí)與后臺(tái)進(jìn)行數(shù)據(jù)交換,控制核心必須抗干擾、高可靠,故該設(shè)計(jì)中采用的MCU是由意法半導(dǎo)體公司(ST)生產(chǎn)的STM32F103C8T6芯片,該芯片擁有較快的運(yùn)算能力,豐富的外設(shè)資源,完全滿足該設(shè)計(jì)的需要。

      其內(nèi)核為ARM Cortex-M3, 擁有待機(jī)為2μA超低功耗的性能,供電電壓2.0~3.6V并且兼容5V的I/O管腳等特點(diǎn)。芯片的部分原理圖見圖2。

      2.2 顯示模塊

      本次設(shè)計(jì)顯示部分采用的是0.96寸的OLED,其分辨率和LCD一樣都是128×64,是一款低功耗的產(chǎn)品,整體功率低于0.1W,若只顯示漢字使用屏幕功耗只有0.06W,耗電量遠(yuǎn)遠(yuǎn)低于常見的TFT、LCD屏幕,可視角度近160°,幾乎成為一個(gè)平面。本設(shè)計(jì)采用的是SPI接口的OLED,時(shí)鐘引腳D0接PA7,數(shù)據(jù)引腳D1連接PA6,復(fù)位引腳RES連接PA5,命令選擇引腳連接PA4,見圖2。

      2.3 無線遙控模塊

      本設(shè)計(jì)采用的無線遙控模塊為增強(qiáng)型的NRF24L01,功率相比同尺寸的模塊大,同樣傳輸距離可以達(dá)到5km,為機(jī)器人的通信提供可靠保障。它工作在2.4~2.5GHz頻段,該頻段是世界通用的ISM頻段。有著高速率、多頻點(diǎn)、超小型、低成本等特點(diǎn),常用于一些要求低功耗、低成本、短距離的場合。模式控制引腳CE接STM32的PA15,片選線CSN接STM32的PA12,時(shí)鐘線SCK接STM32的PB13,MOSI、MISO分別 接STM32的PB15、PB14,中 斷 引 腳IRQ接STM32的PA11,見圖2。

      圖2 主控核心原理圖

      2.4 方向組件

      本設(shè)計(jì)方向組件采用的十字搖桿PS2,它是一個(gè)雙向10K電阻器,當(dāng)搖動(dòng)手柄的時(shí)候,電位器抽頭的對(duì)應(yīng)的阻值也會(huì)發(fā)生變化。此時(shí)給搖桿加上電源,利用電阻分壓的原理,再用單片機(jī)的ADC去采集每個(gè)角度對(duì)應(yīng)的電壓值來判斷需要控制的方向[6]。

      2.5 攝像頭圖傳模塊

      模塊采用800線的攝像頭,外加一套2.1mm的鏡頭,拍攝到的畫面格外清晰。圖傳用的5.8G透傳模組,有48個(gè)工作頻道,兼容市場上的全部5.8G頻道;功耗特別小,只有600mW,200mA;圖傳模塊可以連接手機(jī),讓手機(jī)作為一個(gè)顯示器,大大地減少來開發(fā)成本,只需下載一個(gè)APP即可[7]。

      2.6 溫濕度與光照模塊

      本次采用的SHT20與BH1750FVI都是I2C接口的,意味著只需4根線就可以通信,其中有兩條電源線,一條時(shí)鐘線,一條數(shù)據(jù)線。極大地節(jié)約了IO口使用,降低MCU的負(fù)擔(dān),保證了數(shù)據(jù)通信的穩(wěn)定性。溫濕度傳感器原理圖如圖3所示,光照強(qiáng)度傳感器原理圖如圖4所示。

      圖3 溫濕度傳感器原理圖

      圖4 光照強(qiáng)度傳感器原理圖

      2.7 總電源模塊

      發(fā)射部分:由于STM32F 103C8T6需要3.3V供電,雙軸搖桿需要的電源要穩(wěn)定,不能有雜波,以免影響ADC采集的精度。采用12V 12Ah的電池作為供電電源,所以采用TI公司TPS7333作為電源管理芯片,有著紋波較小,輸入輸出壓差很低的特點(diǎn)。

      接收部分:接收部分對(duì)電源的要求不是很高,主要是給各個(gè)模塊來供電。預(yù)估后發(fā)現(xiàn)需要3.3V供電的模塊所需電流最大700mA,需要5V供電的模塊所需最大電流500mA。根據(jù)需要AMS1117-3.3和AMS1117-5.0這兩款穩(wěn)壓芯片就能達(dá)到要求,并且外圍電路比較簡單,價(jià)格也很便宜。

      2 .8 云平臺(tái)

      本機(jī)器所用的云平臺(tái)為中國移動(dòng)公司的云平臺(tái)ONENET。該平臺(tái)可以根據(jù)開發(fā)者的需要來選擇所用到的協(xié)議,比如EDP、HTTP、MQTT等。ONENET云平臺(tái)是由中國移動(dòng)創(chuàng)立的開放性的物聯(lián)網(wǎng)平臺(tái),該平臺(tái)為了能讓開發(fā)者更容易地對(duì)接,平臺(tái)開發(fā)人員已經(jīng)將所有的接口已經(jīng)封裝好了,用戶只需調(diào)用固定的函數(shù),設(shè)定獨(dú)有的ID賬號(hào)和密鑰即可。有著方便快捷,免費(fèi),穩(wěn)定等特點(diǎn)。官方給出了完整的DEMO,開發(fā)者只需將自己所需要的功能添加進(jìn)去,選定好通信協(xié)議即可。該機(jī)器人采用EDP協(xié)議,既能上傳數(shù)據(jù)又能下發(fā)數(shù)據(jù),在沒有數(shù)據(jù)傳輸?shù)臅r(shí)候只需向服務(wù)器發(fā)送心跳包來維持它們之間的連接,以免中斷造成數(shù)據(jù)的丟失。

      3 機(jī)器人軟件設(shè)計(jì)

      該機(jī)器人的程序設(shè)計(jì)主要包括運(yùn)動(dòng)控制系統(tǒng)的設(shè)計(jì)、圖像回傳系統(tǒng)的設(shè)計(jì)、數(shù)據(jù)通信系統(tǒng)的設(shè)計(jì)和數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)見圖5,各個(gè)子程序共同配合完成機(jī)器人的控制作用。

      圖5 機(jī)器人控制系統(tǒng)結(jié)構(gòu)圖

      3.1 機(jī)器人的運(yùn)動(dòng)控制系統(tǒng)

      機(jī)器人的運(yùn)動(dòng)狀態(tài)主要是前進(jìn)、后退、轉(zhuǎn)彎,控制機(jī)器人的運(yùn)動(dòng)狀態(tài)就是控制機(jī)器人兩個(gè)驅(qū)動(dòng)電機(jī)的轉(zhuǎn)速。機(jī)器人底盤采用履帶鋁合金底盤,兩個(gè)電機(jī)通過減速齒輪驅(qū)動(dòng)機(jī)器人運(yùn)動(dòng)。通過頻率為2kHz的PWM控制電機(jī)的轉(zhuǎn)速,當(dāng)兩電機(jī)的轉(zhuǎn)速相近時(shí),機(jī)器人直線前行;控制電機(jī)的PWM的脈寬不同,可以實(shí)現(xiàn)機(jī)器人的轉(zhuǎn)向[8]。

      3.1.1 PID控制算法

      機(jī)器人驅(qū)動(dòng)電機(jī)采用增量式PID控制算法,在電機(jī)的減速齒輪上裝有500線的光電編碼器,STM32F103C8T6單片機(jī)計(jì)數(shù)光電編碼器的脈沖數(shù),通過計(jì)算得出PWM的脈沖寬度,形成閉環(huán)控制。為了程序方便,系統(tǒng)將編碼器的數(shù)值作為設(shè)定值,單片機(jī)采集的編碼器數(shù)值為實(shí)際值,轉(zhuǎn)速誤差()e t=設(shè)定值—編碼器數(shù)值。PID算法的核心就是通過誤差控制電機(jī)轉(zhuǎn)速,Δu(t) =P· [e(t)-e(t-1)] +I·e(t) +D·[e(t)- 2e(t-1)+e(t- 2)],式中e(t)為誤差,e(t-1)為上次誤差,e(t-2)為上兩次誤差。調(diào)整P、I、D的三個(gè)參數(shù),得到最終PWM的輸出。

      3.1.2 前進(jìn)、轉(zhuǎn)彎控制

      機(jī)器人運(yùn)動(dòng)主要是前進(jìn)、轉(zhuǎn)彎控制,后退就是與前進(jìn)正好相反。前進(jìn)時(shí)保持兩路PWM占空比不變,雙履帶轉(zhuǎn)速一樣,機(jī)器人實(shí)現(xiàn)直線行走。當(dāng)需要右拐時(shí),左輪PWM占空比增大,左輪加速,右輪停止轉(zhuǎn)動(dòng),實(shí)現(xiàn)右轉(zhuǎn)。左轉(zhuǎn)與右轉(zhuǎn)相反。當(dāng)需要180°原地掉頭時(shí),是左輪前進(jìn),右輪倒轉(zhuǎn)實(shí)現(xiàn)180°掉頭。

      3.2 通信系統(tǒng)的設(shè)計(jì)

      該機(jī)器人的通信系統(tǒng)主要由發(fā)送程序和接收程序構(gòu)成,發(fā)送程序首先進(jìn)行系統(tǒng)自檢確定系統(tǒng)是否工作正常,系統(tǒng)通信正常的后就可以正常傳輸數(shù)據(jù)了,先將NRF24L01的初始化配置成發(fā)送模式,再利用單片機(jī)的ADC檢測搖桿的值,并且在OLED上顯示所采集到的數(shù)據(jù),然后通過NRF24L01將數(shù)據(jù)發(fā)送出去[9~10],完成遙控手柄的操作。數(shù)據(jù)的接收端通過接收到的指令控制機(jī)器人的運(yùn)行,為了保證發(fā)送接收數(shù)據(jù)的準(zhǔn)確,每次發(fā)送數(shù)據(jù)的最后兩位采用CRC16校驗(yàn)。

      3.3 數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)

      數(shù)據(jù)采集系統(tǒng)主要任務(wù)是采集傳感器數(shù)值,該機(jī)器人每5ms采集一次傳感器數(shù)值,通過單片機(jī)自帶12位ADC讀取數(shù)據(jù)時(shí)采集到的數(shù)值會(huì)帶有誤差。為了減小采集誤差,程序設(shè)計(jì)中采用求平均值和滑窗的濾波算法。

      3.3.1 平均濾波算法

      單片機(jī)5ms讀一次ADC的數(shù)值,把數(shù)據(jù)裝入長度為10的數(shù)組中,對(duì)數(shù)組中的數(shù)值從小到大進(jìn)行排序,即ADC_Data[ 10]= {a1,a2, ···,a10},其中a1<a2<a3。為了去除ADC采集中的較大干擾,去掉最小的2個(gè)數(shù)和最大的兩個(gè)數(shù),選擇數(shù)組中間的6個(gè)數(shù)求平均作為ADC的輸出值,這樣可以有效避免ADC的值的較大誤差帶給平均值的干擾。即ADC_Value=。通過上述算法,單片機(jī)每50ms得到一次精確的ADC數(shù)值,用于后續(xù)的計(jì)算。

      3.3.2 滑窗濾波算法

      經(jīng)過平均后的ADC的值有時(shí)跳變較大,還需要做平滑處理,防止機(jī)器人運(yùn)動(dòng)的震顫,此時(shí)該系統(tǒng)采用滑窗濾波的算法。經(jīng)試驗(yàn)得知采用長度為10的滑窗算法數(shù)據(jù)跳變較少,平滑效果較好,將平均后的ADC值裝到一個(gè)長度為10的數(shù)組中,將這個(gè)數(shù)組的平均值作為最終使用值。滑窗數(shù)組的長度10保持不變,下一個(gè)ADC的值裝入數(shù)組作為第10個(gè)數(shù),將第一個(gè)數(shù)拋棄,每加入一個(gè)數(shù)據(jù),就會(huì)拋棄一個(gè)最前的數(shù)據(jù),每次都是10個(gè)數(shù)據(jù)求平均,這樣可以使得數(shù)據(jù)更加平滑。

      4 結(jié)論

      該機(jī)器人主要采用STM32為控制核心,通過遠(yuǎn)程手柄操作,實(shí)現(xiàn)了對(duì)工業(yè)生產(chǎn)線等復(fù)雜環(huán)境的溫度、濕度等量進(jìn)行監(jiān)控。通過遠(yuǎn)程遙控,機(jī)器人可以到達(dá)對(duì)人體有危險(xiǎn)的場所,利用攝像頭可以隨時(shí)觀察危險(xiǎn)的生產(chǎn)環(huán)境。該機(jī)器人實(shí)用強(qiáng),尺寸較小,操作方便,具有一定的經(jīng)濟(jì)效益。

      猜你喜歡
      原理圖遙控單片機(jī)
      如何遙控引爆的
      淺談STM32核心板原理圖設(shè)計(jì)
      基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
      電子制作(2019年13期)2020-01-14 03:15:28
      電路原理圖自動(dòng)布圖系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
      基于Protel DXP 2004層次原理圖的設(shè)計(jì)
      基于單片機(jī)的層次漸變暖燈的研究
      電子制作(2019年15期)2019-08-27 01:12:10
      基于單片機(jī)的便捷式LCF測量儀
      電子制作(2019年9期)2019-05-30 09:42:02
      他是如何遙控引爆的
      Microchip推出兩個(gè)全新PIC單片機(jī)系列
      遙控賽車
      渑池县| 鞍山市| 蓬莱市| 金川县| 乌兰浩特市| 宜都市| 施甸县| 高陵县| 修文县| 贡山| 乳山市| 项城市| 民乐县| 西青区| 芷江| 屏南县| 巴南区| 昭苏县| 博客| 内丘县| 缙云县| 尼勒克县| 亚东县| 富平县| 揭阳市| 大同县| 紫阳县| 威海市| 凤城市| 潜江市| 新绛县| 会东县| 大名县| 房山区| 双鸭山市| 邯郸县| 定远县| 巩义市| 河南省| 洛隆县| 屯留县|