• 
    

    
    

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

      ?

      樹莓派:Python編程實(shí)現(xiàn)雙紅外雙向預(yù)警

      2022-12-16 03:07:33牟曉東
      電腦報(bào) 2022年47期
      關(guān)鍵詞:提示信息蜂鳴器低電平

      牟曉東

      同樣是利用PinPong庫(kù)進(jìn)行Python編程,在樹莓派中的開發(fā)板初始化語(yǔ)句則應(yīng)設(shè)置為“Board("rpi").begin()”,其余的代碼書寫規(guī)則與在Arduino和掌控板中幾乎完全一致。以實(shí)現(xiàn)“雙紅外雙向預(yù)警”功能為例,如何在樹莓派中進(jìn)行Python編程呢?

      實(shí)驗(yàn)器材包括:樹莓派3B一塊,古德微擴(kuò)展板一塊,紅外線傳感器兩支,紅色、綠色和黃色LED燈各一支,低電平觸發(fā)蜂鳴器一個(gè),各種杜邦線若干。首先,將樹莓派與擴(kuò)展板正確連接(注意四周緊密接觸);接著,將一支紅外線傳感器直接插入擴(kuò)展板的24號(hào)組引腳,注意VCC、GND和OUT三個(gè)引腳要一一對(duì)應(yīng),另一支紅外線傳感器則通過(guò)杜邦線連接至擴(kuò)展板的23號(hào)組引腳,同樣要注意三個(gè)引腳的正確對(duì)應(yīng)關(guān)系;然后,通過(guò)杜邦線將低電平觸發(fā)蜂鳴器的I/O信號(hào)引腳連接至擴(kuò)展板的25號(hào)引腳組的D(數(shù)字信號(hào))引腳,電源正極VCC端接入擴(kuò)展板的3.3V引腳端,GND端接地;接下來(lái),按照“長(zhǎng)腿正、短腿負(fù)”的規(guī)則,將綠色、紅色和黃色LED燈分別插入擴(kuò)展板的5號(hào)、6號(hào)和12號(hào)引腳;最后,給樹莓派通電,啟動(dòng)操作系統(tǒng)(如圖1)。

      在電腦端運(yùn)行Windows的“遠(yuǎn)程桌面連接”,輸入樹莓派的IP地址(192.168.1.120)后點(diǎn)擊“連接”按鈕,進(jìn)入樹莓派的操作系統(tǒng)。

      如果是第一次在樹莓派中調(diào)用PinPong庫(kù)進(jìn)行Python編程,需要先進(jìn)行庫(kù)模塊的安裝,方法是點(diǎn)擊左上角的“LX終端”進(jìn)入命令行模式,輸入命令“pip3 install pinpong”后回車,直至最終出現(xiàn)“Successfully installed……”的安裝成功提示即可(如圖2)。

      值得一提的是,命令行中的“pip3”表示將PinPong庫(kù)安裝于Python 3環(huán)境(PinPong庫(kù)無(wú)法運(yùn)行于Python 2等低版本環(huán)境),如果命令行中的“pip3”替換為常規(guī)的“pip”,則是試圖將PinPong庫(kù)安裝于樹莓派中可能存在的Python 2中,就會(huì)出現(xiàn)一些異常的錯(cuò)誤提示。

      安裝好PinPong庫(kù)后,點(diǎn)擊左上角的樹莓派圖標(biāo),從菜單中依次選擇“編程”-“Thonny Python IDE”,進(jìn)入Python編輯器開始編程:

      首先,導(dǎo)入時(shí)間庫(kù):“import time”,再導(dǎo)入PinPong庫(kù)中的Board開發(fā)板及Pin引腳類:“from pinpong.board import Board,Pin”,通過(guò)語(yǔ)句“Board("rpi").begin()”對(duì)樹莓派進(jìn)行初始化;建立Green_LED、Red_LED和Yellow_LED三個(gè)變量,分別賦值為“Pin(Pin.D5,Pin.OUT)”“Pin(Pin.D6,Pin.OUT)”和“Pin(Pin.D12,Pin.OUT)”,作用是對(duì)插入5號(hào)、6號(hào)和12號(hào)引腳的綠色、紅色和黃色LED燈進(jìn)行初始化,聲明其為電平輸出端;接著,建立RedSensor_Front和RedSensor_Up兩個(gè)變量,分別賦值為“Pin(Pin.D23,Pin.IN)”和“Pin(Pin.D24,Pin.IN)”,作用是對(duì)插入23號(hào)和24號(hào)引腳的兩支紅外線傳感器進(jìn)行初始化,聲明其為電平輸入端,二者的監(jiān)測(cè)方向分別為樹莓派的前方(Front)和上方(Up);再建立變量Low_Buzzer,賦值為“Pin(Pin.D25,Pin.OUT)”,作用是對(duì)插入25號(hào)引腳的低電平觸發(fā)蜂鳴器進(jìn)行初始化,聲明其為電平輸出端;語(yǔ)句“Low_Buzzer.value(1)”的作用是關(guān)閉蜂鳴器——因?yàn)闃漭赡J(rèn)的為其加載低電平會(huì)導(dǎo)致其異?!鞍l(fā)聲”(如圖3)。

      接下來(lái),編寫“while True”循環(huán)部分主程序代碼:

      為兩個(gè)變量RedSensor_Front_value和RedSensor_Up_value分別賦值“RedSensor_Front.read_digital()”和“RedSensor_Up.read_digital()”,作用是讀取兩支紅外線傳感器的數(shù)字信號(hào),注意紅外線傳感器所獲取的信號(hào)如果是1,表示監(jiān)測(cè)范圍內(nèi)無(wú)物體,0的話代表監(jiān)測(cè)到有物體闖入。接著是兩個(gè)if判斷語(yǔ)句,結(jié)構(gòu)非常類似,作用是分別對(duì)前方和上方進(jìn)行紅外線監(jiān)測(cè)結(jié)果判斷和處理:如果條件(RedSensor_Front_value==0)成立,說(shuō)明前方有物體闖入,則依次執(zhí)行熄滅綠色LED燈(Green_LED.value(0))、點(diǎn)亮紅色LED燈(Red_LED.value(1))、蜂鳴器發(fā)聲(Low_Buzzer.value(0))三個(gè)動(dòng)作,同時(shí)在程序交互界面上打印輸出文字提示信息(print("前方預(yù)警!"));如果條件(RedSensor_Up_value

      ==0)成立,說(shuō)明上方有物體闖入,則依次執(zhí)行熄滅綠色LED燈(Green_LED.value(0))、點(diǎn)亮黃色LED燈(Yellow_LED.value(1))、蜂鳴器發(fā)聲(Low_Buzzer.value(0))三個(gè)動(dòng)作,同時(shí)在程序交互界面上打印輸出文字提示信息(print("上方預(yù)警!"))。

      兩個(gè)if判斷語(yǔ)句組執(zhí)行結(jié)束后,添加時(shí)間等待語(yǔ)句“time.sleep(0.3)”,暫停0.3秒鐘;接著,熄滅紅色和黃色警示燈:“Red_LED.value(0)”“Yellow_LED.value(0)”,點(diǎn)亮綠色LED燈:“Green_LED.value(1)”,并且同樣是通過(guò)設(shè)置高電平的方式關(guān)閉低電平觸發(fā)蜂鳴器:“Low_Buzzer.value(1)”,打印輸出文字提示信息:“print("狀態(tài)正?!?)”(如圖4)。

      將程序保存為“Two_Way_Alert.py”,點(diǎn)擊上方的“運(yùn)行”按鈕進(jìn)行測(cè)試:正常情況下,前方和上方均無(wú)障礙物和遮擋,蜂鳴器不發(fā)聲,綠色LED燈常亮,同時(shí)程序界面下方會(huì)有“狀態(tài)正?!钡奈淖痔崾荆蝗绻谇胺皆O(shè)置一個(gè)玩偶障礙物的話,蜂鳴器開始嘯叫報(bào)警,紅色LED燈發(fā)光,綠色LED燈熄滅,文字提示信息顯示為“前方預(yù)警!”,直至將障礙物移除后才恢復(fù)為正常狀態(tài);如果在上方遮擋一個(gè)滑桿傳感器來(lái)模擬“闖入者”的話,蜂鳴器又會(huì)開始嘯叫報(bào)警,黃色LED燈發(fā)光,綠色LED燈熄滅,文字提示信息顯示為“上方預(yù)警!”,直至將遮擋物移除后才恢復(fù)為正常狀態(tài)(如圖5)。

      猜你喜歡
      提示信息蜂鳴器低電平
      數(shù)字電路中“邏輯非”的用法辨析
      電動(dòng)自行車產(chǎn)品車速提示音檢測(cè)現(xiàn)狀和整改技術(shù)研究(2)
      鐵道車輛高/低電平信號(hào)智能發(fā)生器設(shè)計(jì)
      掌控板制作簡(jiǎn)易鋼琴
      元征X-431 PRO 3S+實(shí)測(cè):2018年吉普自由光保養(yǎng)歸零
      單片機(jī)驅(qū)動(dòng)蜂鳴器的程序設(shè)計(jì)
      2017款凱迪拉克2.8L/3.0L/3.2L/3.6L車型低電平參考電壓總線電路圖
      元征X-431實(shí)測(cè)篇2015款路虎攬勝剎車片更換過(guò)程
      豐田凱美瑞240V車間隙警告蜂鳴器異常鳴響
      號(hào)碼提示信息的呈現(xiàn)方法對(duì)手機(jī)操作的影響
      宜州市| 吉隆县| 七台河市| 博客| 南召县| 馆陶县| 东莞市| 诏安县| 汝南县| 西青区| 渝北区| 丹阳市| 菏泽市| 南郑县| 芜湖县| 诸城市| 沂水县| 青川县| 南涧| 高邮市| 瑞安市| 达拉特旗| 湘潭县| 鹤山市| 府谷县| 曲阳县| 吴江市| 额济纳旗| 郓城县| 祁阳县| 宁城县| 永定县| 桐庐县| 台东县| 房产| 威宁| 抚松县| 讷河市| 黔江区| 博湖县| 汝城县|