• 
    

    
    

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

      一種水泵試驗(yàn)臺(tái)巡檢小車行走算法的設(shè)計(jì)

      2023-02-06 06:59:22范志華劉宇彤楊光蘇成貴
      農(nóng)業(yè)與技術(shù) 2023年2期
      關(guān)鍵詞:循跡試驗(yàn)臺(tái)舵機(jī)

      范志華劉宇彤楊光蘇成貴

      (1.吉林省農(nóng)業(yè)機(jī)械研究院,吉林 長(zhǎng)春 130022;2北京航空航天大學(xué)機(jī)械工程及自動(dòng)化學(xué)院,北京 100191)

      引言

      水泵是一種通用機(jī)械,其應(yīng)用范圍非常廣,幾乎存在國(guó)民經(jīng)濟(jì)建設(shè)的所有行業(yè)中,社會(huì)需求量大。提升水泵質(zhì)量,對(duì)我國(guó)經(jīng)濟(jì)建設(shè)的持續(xù)發(fā)展具有一定的促進(jìn)作用[1]。在實(shí)驗(yàn)室內(nèi)利用試驗(yàn)臺(tái)測(cè)定水泵性能參數(shù),是一種檢測(cè)水泵綜合性能非常有效的方式。

      水泵閉式試驗(yàn)臺(tái)通常由臺(tái)架、電機(jī)、聯(lián)軸器、扭矩傳感器、入口測(cè)壓管路、出口測(cè)壓管路、伸縮節(jié)、變徑管路、直管路、支撐架、流量計(jì)、閥門、穩(wěn)流密封罐、控制系統(tǒng)等部分組成[2],各部分之間通過(guò)法蘭、彎頭連接。水泵啟動(dòng)后,管路中存在一定壓力,所以試驗(yàn)臺(tái)周圍要有試驗(yàn)人員隨時(shí)觀察管路的泄漏量與承壓能力。連接件的飛出或者高壓水從管路中竄出,都將對(duì)試驗(yàn)人員的人身安全造成危害。本文提出了一種安裝了網(wǎng)絡(luò)攝像頭的能夠?qū)崿F(xiàn)手動(dòng)控制和自動(dòng)控制2種方式行走的巡檢小車算法,小車可以在試驗(yàn)臺(tái)周圍智能循跡、自動(dòng)避障,也可以由檢測(cè)人員遙控小車行走在特定區(qū)域。從而實(shí)現(xiàn)試驗(yàn)人員坐在辦公室中觀察攝像頭傳過(guò)來(lái)的影像信息就可以了解水泵運(yùn)行現(xiàn)場(chǎng)的狀況,保障了人員安全,減少了工作量。

      1 系統(tǒng)方案設(shè)計(jì)

      1.1 功能設(shè)計(jì)

      巡檢小車采用Arduino UNO R3開發(fā)板進(jìn)行開發(fā)設(shè)計(jì),集成了智能循跡、自動(dòng)避障、遙控回收和視頻監(jiān)測(cè)等功能。小車主要由行走和監(jiān)測(cè)2部分組成,行走部分由紅外循跡模塊、電機(jī)驅(qū)動(dòng)模塊、舵機(jī)模塊、超聲測(cè)距模塊構(gòu)成,監(jiān)測(cè)部分由視頻監(jiān)測(cè)模塊構(gòu)成。巡檢小車的操作系統(tǒng)安裝在手機(jī)上,操作手機(jī)APP就能實(shí)現(xiàn)對(duì)巡檢小車的遙控和水泵試驗(yàn)臺(tái)現(xiàn)場(chǎng)工作情況的視頻監(jiān)測(cè)等功能。巡檢小車實(shí)物圖如圖1所示。巡檢小車主要解決了在水泵測(cè)試過(guò)程中,檢測(cè)人員在試驗(yàn)臺(tái)周圍長(zhǎng)時(shí)間走動(dòng)觀察水泵運(yùn)行狀態(tài),管路泄漏情況,臺(tái)架的穩(wěn)定性等過(guò)程中容易造成人身安全危害的問(wèn)題。

      圖1 巡檢小車實(shí)物圖

      1.2 控制系統(tǒng)設(shè)計(jì)

      Arduino UNO R3開發(fā)板是本巡檢小車的主控中心。R3開發(fā)板采用ATMEGA328P單片機(jī)作為核心處理器,耗電量少、成本低、安全性較高、簡(jiǎn)單靈活、便于上手,是目前Arduino平臺(tái)上最常見的一款產(chǎn)品[3]。其接口豐富,有14個(gè)數(shù)字I/O口(包含6個(gè)PWM輸出),6個(gè)模擬I/O口,1個(gè)USB口,1個(gè)頻率為16MHz的晶體振蕩器,同時(shí)支持SPI,IIC,UART串口通信[4]。這些特點(diǎn),使其完全能夠滿足本巡檢小車的設(shè)計(jì)需求。

      本巡檢小車的程序設(shè)計(jì)是運(yùn)用Arduino語(yǔ)言在電腦上完成編譯,并通過(guò)開發(fā)板上的USB口將程序下載到中央處理器中,由中央處理器運(yùn)行程序使小車完成其相應(yīng)的功能。小車共采用2塊Arduino UNO R3,1塊主要負(fù)責(zé)指令信號(hào)、傳感器數(shù)據(jù)的采集以及對(duì)于舵機(jī)的驅(qū)動(dòng);1塊主要負(fù)責(zé)通過(guò)輸出使能信號(hào)以及PWM信號(hào),控制L298N電機(jī)驅(qū)動(dòng)模塊進(jìn)而驅(qū)動(dòng)小車進(jìn)行多樣的運(yùn)動(dòng)。兩板之間通過(guò)串口通信相連接,用于在手動(dòng)控制時(shí)傳遞手柄的信號(hào),控制電機(jī)的運(yùn)動(dòng)。同時(shí),還實(shí)現(xiàn)了對(duì)小車攝像頭云臺(tái)的控制,完成了攝像頭從不同角度來(lái)觀察水泵試驗(yàn)臺(tái)的各個(gè)關(guān)鍵部位的運(yùn)行情況。為了減少視頻傳輸延時(shí),小車攝像頭不經(jīng)過(guò)中央處理器,而是通過(guò)WIFI直接對(duì)接到手機(jī) APP的后臺(tái)端口[5]。

      2 行走部分模塊選擇

      2.1 紅外循跡模塊

      選用智能小車避障傳感器模塊作為紅外循跡模塊,該傳感器模塊對(duì)環(huán)境光線適應(yīng)能力強(qiáng),可以通過(guò)調(diào)節(jié)電位器上的旋鈕改變探測(cè)距離,具有抗干擾能力強(qiáng)、容易安裝、操作便捷等特點(diǎn)[6]。該模塊有效探測(cè)距離2~30cm,檢測(cè)角度35°。實(shí)物圖見圖2。

      圖2 紅外循跡模塊

      2.2 電機(jī)驅(qū)動(dòng)模塊

      本巡檢小車選用L298N直流步進(jìn)電機(jī)驅(qū)動(dòng)板作為電機(jī)驅(qū)動(dòng)模塊,其可以控制直流電機(jī)的方向和速度。大容量濾波電容、續(xù)流保護(hù)二極管是這款驅(qū)動(dòng)板的一個(gè)特點(diǎn),并且其驅(qū)動(dòng)能力強(qiáng),發(fā)熱量低,這些優(yōu)勢(shì)保證了小車運(yùn)行的可靠性。實(shí)物圖見圖3。

      圖3 電機(jī)驅(qū)動(dòng)模塊

      2.3 舵機(jī)模塊

      選用MG996R金屬標(biāo)準(zhǔn)舵機(jī)作為本巡檢小車的舵機(jī)模塊,其速度慢、扭力大、精度高,性能穩(wěn)定附帶自鎖功能,確保在信號(hào)不穩(wěn)定因素下不會(huì)失控,實(shí)物圖見圖4。舵機(jī)的控制需要1個(gè)20ms左右的時(shí)基脈沖,該脈沖的高電平部分一般為0.5~2.5ms的角度控制脈沖部分,總間隔為2ms。本設(shè)計(jì)采用180°角度伺服,對(duì)應(yīng)的控制關(guān)系見表1。

      圖4 MG996R 舵機(jī)

      表1 控制關(guān)系

      2.4 超聲測(cè)距模塊

      選用HC-SR04超聲波測(cè)距傳感器作為本巡檢小車的超聲測(cè)距模塊,其安裝方便、材料堅(jiān)固、耐腐蝕、精度高、使用壽命長(zhǎng)。實(shí)物圖見圖5。

      圖5 HC-SR04超聲波測(cè)距傳感器

      2.5 手柄

      本設(shè)計(jì)選用PS2手柄,其是4軸12按鍵、雙高精度模擬搖桿設(shè)計(jì),使操作更加便捷。實(shí)物圖見圖6。

      圖6 PS2手柄

      3 行走方式設(shè)計(jì)

      3.1 方案設(shè)計(jì)

      為了保證水泵試驗(yàn)臺(tái)現(xiàn)場(chǎng)工作時(shí)各種突發(fā)狀況的發(fā)生,將巡檢小車的行走方式設(shè)計(jì)為手動(dòng)和自動(dòng)2種控制模式。手動(dòng)控制采用與常見的遙控車類似的設(shè)計(jì)方案,將PS2手柄通過(guò)紅外信號(hào)接收器與單片機(jī)開發(fā)板相連。利用PS2手柄發(fā)出的信號(hào)來(lái)控制舵機(jī)的轉(zhuǎn)動(dòng),進(jìn)而改變機(jī)械臂的形態(tài)以實(shí)現(xiàn)相應(yīng)的目標(biāo),也可以通過(guò)2個(gè)開發(fā)板之間的串口通信實(shí)現(xiàn)PS2手柄對(duì)于電機(jī)的驅(qū)動(dòng)。

      自動(dòng)控制采用紅外循跡模塊與超聲波測(cè)距模塊相結(jié)合的方案,紅外循跡模塊用于實(shí)現(xiàn)小車按照人為預(yù)設(shè)的軌跡行進(jìn),以實(shí)現(xiàn)循跡的目的;超聲波測(cè)距模塊用于對(duì)小車前方的距離進(jìn)行測(cè)算,但距離過(guò)小時(shí),小車會(huì)逐漸減速直至停止,用于對(duì)于障礙物的規(guī)避。

      3.2 程序設(shè)計(jì)

      3.2.1 工作原理

      手動(dòng)控制根據(jù)搖桿方向?qū)崿F(xiàn)小車的移動(dòng)。自動(dòng)控制通過(guò)按動(dòng)手柄上的L3按鍵實(shí)現(xiàn)手動(dòng)和自動(dòng)模式的轉(zhuǎn)換,在自動(dòng)控制時(shí),只需要將小車的2個(gè)紅外循跡模塊置于軌跡線兩側(cè)即可實(shí)現(xiàn)自動(dòng)的循跡避障功能。

      3.2.2 手動(dòng)控制程序設(shè)計(jì)

      控制小車運(yùn)動(dòng)的信號(hào)主要采用2塊板之間的串口通信來(lái)實(shí)現(xiàn),其中2號(hào)板,用于讀取1號(hào)板搖桿位置改變的串行信號(hào),即而通過(guò)控制L289N電機(jī)驅(qū)動(dòng)模塊來(lái)控制電機(jī)轉(zhuǎn)動(dòng)。

      算法邏輯:1號(hào)板讀取PS2信號(hào)→發(fā)送信號(hào)給2號(hào)板→2號(hào)板讀取→控制電機(jī)轉(zhuǎn)動(dòng)。示例代碼如下。

      1號(hào)板:

      void PS2_control(void) {

      if (error == 1)

      return;

      if (type != 1)

      return;

      ps2x.read_gamepad(false, vibrate);

      int Y2,X2,Y1,X1;

      Y2 = ps2x.Analog(PSS_LY);

      X2 = ps2x.Analog(PSS_LX);

      Y1 = ps2x.Analog(PSS_RY);

      X1 = ps2x.Analog(PSS_RX);

      if (Y1 < 5 && X1 > 0 && X1 < 255)

      {

      Serial.print("#");

      delay(5);

      }

      }

      2號(hào)板:

      void Up(){

      digitalWrite(L1_IN2,HIGH);

      digitalWrite(L1_IN1,LOW);

      digitalWrite(R1_IN4,HIGH);

      digitalWrite(R1_IN3,LOW);

      analogWrite(pwm_L1,pwmspeed);

      analogWrite(pwm_L2,pwmspeed);

      }

      void loop()

      {

      if(a==1&&Serial.available())

      {

      c=Serial.read();

      switch (c)

      {

      case ‘#’: {

      Up();

      Serial.println("u");

      break;

      }

      }

      }

      3.2.3 自動(dòng)控制程序設(shè)計(jì)

      小車的自動(dòng)控制主要基于紅外循跡模塊與超聲波測(cè)距模塊的配合,通過(guò)開發(fā)板讀取到傳感器的數(shù)據(jù)并對(duì)其進(jìn)行處理與判斷,進(jìn)而通過(guò)輸出使能信號(hào)與PWM信號(hào)到L298N電機(jī)驅(qū)動(dòng)模塊以改變電機(jī)轉(zhuǎn)動(dòng)的方向與轉(zhuǎn)速,進(jìn)而實(shí)現(xiàn)循跡與避障,示例代碼如下。

      傳感器模塊的信號(hào)讀?。?/p>

      int x1,x2;

      float distance=200;

      x1=digitalRead(xj_1);

      x2=digitalRead(xj_2);

      digitalWrite(T_pin,LOW);

      delayMicroseconds(2);

      digitalWrite(T_pin,HIGH);

      delayMicroseconds(10);

      digitalWrite(T_pin,LOW);

      int pwmspeed=int(pwmspeed_1*(double(distance)/

      double(400)));

      int pwmlowspeed=pwmlowspeed_2*(double

      (distance/double(400)));

      if(x1==1&&x2==0)

      {

      digitalWrite(L1_IN1,HIGH);

      digitalWrite(L1_IN2,LOW);

      digitalWrite(R1_IN3,HIGH);

      digitalWrite(R1_IN4,LOW);

      analogWrite(pwm_L1,pwmlowspeed);

      analogWrite(pwm_L2,pwmspeed);

      }

      3.3 仿真模擬

      為了證明所編寫的控制代碼邏輯成立可行性,減少現(xiàn)場(chǎng)調(diào)試的工作量,分別進(jìn)行了2種方式的仿真模擬。

      3.3.1 QuartusII仿真模擬

      3.3.1.1 輸入輸出變量

      通過(guò)VHDL語(yǔ)言,利用FPGA的知識(shí),對(duì)于巡檢小車的整體進(jìn)行了脈沖波形信號(hào)的仿真模擬,輸入輸出的變量見圖7。

      圖7 輸入輸出變量圖

      Choose:用于選擇自動(dòng)模式與手動(dòng)模式,當(dāng)為高電平時(shí)為手動(dòng)模式,當(dāng)為低電平時(shí)為自動(dòng)控制模式。

      clk_pwm,clk_time:2個(gè)時(shí)鐘信號(hào),用于pwm調(diào)速。

      distant:三位二進(jìn)制數(shù),用于模擬超聲波測(cè)距模塊讀取到的距離信號(hào)。

      en_1,en_2:電機(jī)的使能信號(hào),一高一低時(shí)電機(jī)可以轉(zhuǎn)動(dòng)。

      motor_1,motor_2:電機(jī)的輸出信號(hào),采用pwm調(diào)速。

      position:用于記錄運(yùn)動(dòng)方向(前后)的信號(hào)。

      switch:四維二進(jìn)制數(shù),用于模擬PS2手柄的搖桿。

      xj_1,xj_2:模擬2個(gè)紅外循跡模塊的信號(hào)。

      3.3.1.2 仿真結(jié)果

      仿真結(jié)果由調(diào)速、減速避障、循跡轉(zhuǎn)彎和手動(dòng)控制4種。

      調(diào)速:改變clk_pwm的頻率,觀察到motor_1與motor_2的占空比發(fā)生率變化,占空比的改變可以帶來(lái)1個(gè)周期內(nèi)平均電壓的改變,可以實(shí)現(xiàn)車速的改變,同理,僅僅改變一側(cè)的車速,即可實(shí)現(xiàn)對(duì)于轉(zhuǎn)彎的控制。仿真的波形如圖8所示。

      圖8 調(diào)速的仿真結(jié)果

      減速避障:控制clk_pwm的頻率不變,改變?nèi)欢M(jìn)制數(shù)distance的值,觀察到motor_1與motor_2的占空比發(fā)生了改變,仿真結(jié)果如圖9所示。

      圖9 減速避障的仿真結(jié)果

      循跡轉(zhuǎn)彎:改變其它變量不變,改變xj_1與xj_2的值,觀察到僅有1個(gè)電機(jī)在轉(zhuǎn)動(dòng),在實(shí)物上表現(xiàn)為小車轉(zhuǎn)彎。仿真結(jié)果如圖10所示。

      圖10 循跡轉(zhuǎn)彎的仿真結(jié)果

      手動(dòng)控制:當(dāng)choose為高電平時(shí),改變四位二進(jìn)制數(shù)switch的值,可以觀察到電機(jī)輸出前進(jìn)、左轉(zhuǎn)、右轉(zhuǎn)等形式,仿真結(jié)果如圖11所示。

      圖11 手動(dòng)控制的仿真結(jié)果

      3.3.2 Protues 仿真模擬

      考慮到僅利用QuartusII進(jìn)行仿真雖然可以得到預(yù)期的結(jié)果,但是波形圖不夠直觀反映小車的運(yùn)動(dòng)狀態(tài),設(shè)計(jì)時(shí)又采用了Protues對(duì)于自動(dòng)控制部分進(jìn)行了仿真。通過(guò)改變超聲波測(cè)距模塊讀取到的距離信號(hào),可以觀察到2個(gè)電機(jī)的轉(zhuǎn)速發(fā)生了變化,改變2個(gè)高線平開關(guān)(用于模擬循跡模塊的信號(hào)),可以觀察到,2個(gè)電機(jī)出現(xiàn)了轉(zhuǎn)速差,即實(shí)現(xiàn)了轉(zhuǎn)彎。利用Protues進(jìn)行仿真的電路如圖12。

      圖12 仿真模擬電路圖

      4 結(jié)語(yǔ)

      本文設(shè)計(jì)的水泵試驗(yàn)臺(tái)巡檢小車,通過(guò)多次調(diào)試、改進(jìn),實(shí)現(xiàn)了在水泵試驗(yàn)臺(tái)周圍智能循跡、自動(dòng)避障和視頻監(jiān)測(cè),并可通過(guò)人工遙控停留在重點(diǎn)區(qū)域進(jìn)行視頻監(jiān)測(cè)。使用Arduino平臺(tái),能夠根據(jù)現(xiàn)場(chǎng)檢測(cè)工作的需要快速修改巡檢小車的程序代碼,使小車能夠更好地適應(yīng)不同檢測(cè)環(huán)境,代替了人工巡檢,提高了工作效率,降低了風(fēng)險(xiǎn)。

      猜你喜歡
      循跡試驗(yàn)臺(tái)舵機(jī)
      基于DFT算法的電力巡檢無(wú)人機(jī)循跡檢測(cè)系統(tǒng)設(shè)計(jì)
      含齒隙彈載舵機(jī)的全局反步模糊自適應(yīng)控制
      滾動(dòng)直線導(dǎo)軌副靜剛度試驗(yàn)臺(tái)設(shè)計(jì)
      基于單片機(jī)的智能循跡小車的設(shè)計(jì)
      基于dsPIC單片機(jī)的飛艇舵機(jī)控制實(shí)現(xiàn)
      電子制作(2018年1期)2018-04-04 01:48:14
      智能差分循跡小車設(shè)計(jì)
      電子制作(2017年1期)2017-05-17 03:54:20
      基于高速同步485總線通信的多通道舵機(jī)控制器設(shè)計(jì)
      基于MC9S12XS128處理器的智能循跡小車分析研究
      電子制作(2016年11期)2016-11-07 08:43:49
      KYJ-T型空壓機(jī)試驗(yàn)臺(tái)自動(dòng)化控制系統(tǒng)研究與開發(fā)
      防爆變頻器加載試驗(yàn)臺(tái)的設(shè)計(jì)
      宜川县| 彭泽县| 八宿县| 武平县| 东乡族自治县| 葫芦岛市| 临泉县| 贺州市| 湘潭市| 巴塘县| 安图县| 枣阳市| 随州市| 平昌县| 永宁县| 中西区| 锡林郭勒盟| 安阳县| 远安县| 封开县| 富顺县| 梧州市| 新化县| 永城市| 三门峡市| 沛县| 长宁县| 临安市| 黑河市| 铁岭县| 太保市| 双流县| 平遥县| 商洛市| 乐山市| 孟州市| 来安县| 平利县| 通化市| 凤冈县| 启东市|