中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python如何DIY藍牙智能小車

發布時間:2022-01-13 10:30:36 來源:億速云 閱讀:103 作者:iii 欄目:互聯網科技

今天小編給大家分享一下python如何DIY藍牙智能小車的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

1.實驗目的

   1. 學習在PC機系統中擴展簡單I/O 接口的方法。

   2. 進一步學習編制數據輸出程序的設計方法。

   3. 學習藍牙模塊的接線方法及其工作原理。

   4. 學習 L298N電機驅動板模塊的接線方法。

   5. 學習藍牙控制小車的工作原理。

2.所需元器件

   TPYBoard板子一塊

   藍牙串口模塊一個

   L298N電機驅動板模塊一個

   智能小車底盤一個

   數據線一條

   杜邦線若干

3.藍牙串口模塊原理

  (1)引出接口包括EN,5V,GND,TX,RX,STATE,我們小車只用到RX,TX,GND,5V四個針腳。          

   (2)模塊默認波特率位9600,默認配對密碼為1234,默認名稱位為HC-06。

   (3)led指示藍牙連接狀態,閃爍表示沒有藍牙連接,常亮表示藍牙已連接并打開了端口,當我們用安卓手機軟件發送指令時,通過串口給TPYBoard發送指令,TPYBoard收到指令通過L298BN模塊來驅動小車前進,后退,向左,向右或者停止。

  如下圖接線,5V 接TPYBoard的VIN, GND 為地線,TX接TPYBoard的RX(這用的是TPYBoard串口2,X3,X4)即X4,RX接TPYBoard的TX即X3。

 python如何DIY藍牙智能小車python如何DIY藍牙智能小車

4.學習L298N電機驅動板模塊的接線方法

   本模塊是2路的H橋驅動,所以可以同時驅動兩個電機,接法如圖所示使能ENA ENB之后,可以分別從IN1 IN2輸入PWM信號驅動電機1的轉速和方向,可以分別從IN3 IN4輸入PWM信號驅動電機2的轉速和方向。我們將電機1接口的OUT1與OUT2與小車的一個電機的正負極連接起來,將電機2接口的OUT3與OUT2與小車的另一個電機的正負極連接起來。然后將兩邊的接線端子,即供電正極(中間的接線端子為接地)連接TPYboard的VIN,中間的接線端子即接地,連接TPYBoard的GND,In1-In4連接TPYBoard的Y1,Y2,Y3,Y4,通過Y1,Y2與Y3,Y4的高低電平,來控制電機的轉動,從而讓小車前進,后退,向左,向右。

python如何DIY藍牙智能小車

接線ok后,編寫main.py,給TOYBoard通電就ok了,下面是源代碼。

5.源代碼

python如何DIY藍牙智能小車

import pyb
from pyb import UART
from pyb import Pin

M2 = Pin('X3', Pin.IN)
M3 = Pin('X4', Pin.IN)
N1 = Pin('Y1', Pin.OUT_PP)
N2 = Pin('Y2', Pin.OUT_PP)
N3 = Pin('Y3', Pin.OUT_PP)
N4 = Pin('Y4', Pin.OUT_PP)

u2 = UART(2, 9600)

while True:
    pyb.LED(2).on()
    pyb.LED(3).on()
    pyb.LED(4).on()
    _dataRead=u2.readall()
    if _dataRead!=None:
    #停止(讀取手機APP傳過來的指令,不同的軟件指令可能不同,可以自己設定,在這里是默認的,下同)
        if(_dataRead.find(b'\xa5Z\x04\xb1\xb5\xaa')>-1):
            print('stop')
            N1.low()
            N2.low()
            N3.low()
            N4.low()
        #向左
        elif(_dataRead.find( b'\xa5Z\x04\xb4\xb8\xaa')>-1):
            print('left')
            N1.low()
            N2.high()
            N3.high()
            N4.low()
        #向右
        elif(_dataRead.find( b'\xa5Z\x04\xb6\xba\xaa')>-1):
            print('right')
            N1.high()
            N2.low()
            N3.low()
            N4.high()
        #后退
        elif(_dataRead.find(b'\xa5Z\x04\xb5\xb9\xaa')>-1):
            print('back')
            N2.high()
            N1.low()
            N4.high()
            N3.low()
        #向前    
        elif(_dataRead.find( b'\xa5Z\x04\xb2\xb6\xaa')>-1):
            print('go')
            N1.high()
            N2.low()
            N3.high()
            N4.low()

以上就是“python如何DIY藍牙智能小車”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

勃利县| 平阴县| 长子县| 安溪县| 衡阳县| 北碚区| 溆浦县| 横山县| 慈利县| 南阳市| 衡东县| 杂多县| 汉中市| 长岭县| 佛教| 绥棱县| 亚东县| 新河县| 米林县| 仁怀市| 准格尔旗| 桐柏县| 和龙市| 丘北县| 富蕴县| 沙雅县| 黄龙县| 庆元县| 高尔夫| 无极县| 康保县| 内丘县| 鹤壁市| 连山| 方城县| 昂仁县| 湖南省| 汕尾市| 金坛市| 武功县| 清远市|