温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Python制作蓝牙无线小车的方法是什么

发布时间:2022-01-13 10:25:14 来源:亿速云 阅读:160 作者:iii 栏目:互联网科技

这篇文章主要介绍“Python制作蓝牙无线小车的方法是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python制作蓝牙无线小车的方法是什么”文章能帮助大家解决问题。

    1.实验目的


    1. 学习在PC机系统中扩展简单I/O 接口的方法。
    2. 进一步学习编制数据输出程序的设计方法。
    3. 学习蓝牙模块的接线方法及其工作原理。
    4. 学习 L298N电机驱动板模块的接线方法。
    5. 学习蓝牙控制小车的工作原理。


    2.所需元器件


    TPYBoard开发板一块(主要MCU,能跑MicroPython的开发板)
    蓝牙串口模块一个
    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制作蓝牙无线小车的方法是什么

 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制作蓝牙无线小车的方法是什么

    接线ok后,编写main.py,给TOYBoard通电就ok了,下面是源代码。


    5.源代码

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制作蓝牙无线小车的方法是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI