[TPYBoard - Micropython之会python就能做硬件 7] 学习使用蓝牙模块及舵机

简介: 转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi            欢迎加入讨论群 64770604 一、实验器材 1、TPYboard V102板  一块 2、无线蓝牙串口透传模块HC-06   一个  3、OLED 屏 一块 二、无线蓝牙串口透传模块 1、无线蓝牙串口透传模块,又叫蓝牙模块,是一种集成蓝牙功能的短距离无线通讯模块。

转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi            欢迎加入讨论群 64770604

一、实验器材

1、TPYboard V102板  一块

2、无线蓝牙串口透传模块HC-06   一个 

3、OLED 屏 一块

二、无线蓝牙串口透传模块

1、无线蓝牙串口透传模块,又叫蓝牙模块,是一种集成蓝牙功能的短距离无线通讯模块。按照协议标准,分为1.2、2.0、2.1、4.0和4.1。4.0以上又称为BLE。蓝牙模块按照用途可分为数据蓝牙模块和语音蓝牙模块。数据蓝牙模块主要用于无线数据传输,语音蓝牙模块则主要完成语音及立体声音频的无线数据传输。蓝牙模块的接口分为串口、usb口、数字IO口,模拟IO口、SPI编程接口及语音接口。本实验中使用的蓝牙模块为串口无线数据模块。

2、常用的蓝牙模块:HC05蓝牙模块和HC06蓝牙模块属于HC民用级串口蓝牙模块,HC03和HC04属于HC工业级串口蓝牙模块。目前大部分蓝牙产品都使用民用级。其中HC05是主从一体,既可以搜索蓝牙也可以被搜索,HC06是从机模块,只能是被搜索。这个实验中,我们使用从机模块就足够,因为采用HC06。

 

3、HC06的主要应用场景

(1)可用于各种带蓝牙功能的电脑、蓝牙主机、手机、PDA以及智能家居等

(2)宽波特率范围4800-1382400,并且模块兼容单片机系统。

(3)可以很容易的利用手机蓝牙软件进行调试。

三、蓝牙模块HC06的使用

     这里我们用一个例子来简单说明蓝牙模块HC06如何使用。

     例子:手机蓝牙调试工具向HC06发送R时,点亮tpyboard上的LED3,当发送Y时,关闭LED3.

 1、连线方法

 

 

2、手机蓝牙调试工具

    手机蓝牙调试工具有很多,这里我们选用蓝牙串口助手。图标如图

         这个软件可以进行数据的收发,这个功能可以实现数据的监控,如图数据监控的截图

还可以进行模拟按键的数据收发(这个功能可以方便我们做个蓝牙遥控小车这一类的DIY),这个功能可以设置一下,详细的步骤如下:

1、点击模式切换,切换至监控站模式;

2、点击页面中的右下角的三个点(功能扩展键)选择更多

3、选择地面站设置,界面如图

 

在这里设置好了之后点击确定就可以保存设置。

3、用手机控制LED3的亮灭

程序代码:

import pyb
from pyb import UART
from pyb import Pin
ULY=UART(2,9600)#(TX, RX) = (X3, X4)
while True:
    if(ULY.any()>0):
        scs=ULY.readall()
        print(scs)

实现效果:

http://v.youku.com/v_show/id_XMjUzNDUwNTM0MA==.html

 

四、舵机

1、舵机

   每个玩过机器人的应该都听说过这个小东西,或者听到过它转起来时发出的“吱吱吱”声音。他与普通电机不同,他可以在指令下旋转0到180度之间的任意角度。比如我们在控制机器人的胳膊转动时,就可以用舵机来控制其抬起或者是放下的角度。

2、舵机的控制与选择

舵机一般都是采用三线控制,即GND、POWER和control(PWM)。

舵机在选择时,有很多种,一般选择时采用以下指标:

大小:舵机身材不同,从大到小,一直到微型有很多种,选择适合你项目的舵机。

重量:根据项目要求选择合适重量的舵机。

扭力:就是舵机有多大的力。在5V的电压下,标准舵机的扭力是5.5千克/厘米(75盎司/英寸)。

转速:从一个位置旋转到另一个位置所需的时长。在5V的电压下,舵机标准转度是0.2秒移动60度。

3、支架

   选择好舵机,还要选择合适的支架,保障舵机能够在平台上运转。

 五、手机蓝牙控制舵机旋转

        使用蓝牙串口助手软件发送想让舵机转动的角度,然后舵机相应命令,转动相应的角度。

1、连线方法

 

2、代码

import pyb
from pyb import UART
from pyb import Pin
from pyb import Servo
ULY=UART(2,9600)#(TX, RX) = (X3, X4)
i=1
ds=0
s=Servo(1)
scs=0
while i>0:
    ds=int(scs)-90
    s.angle(ds,300)
    pyb.delay(1500)
    if(ULY.any()>0):
        scs=ULY.readall()

 

3、演示效果

http://v.youku.com/v_show/id_XMjUzNDUwNjkwOA==.html

 

 

目录
相关文章
|
12天前
|
存储 算法 API
【01】整体试验思路,如何在有UID的情况下获得用户手机号信息,python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡
【01】整体试验思路,如何在有UID的情况下获得用户手机号信息,python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡
127 82
|
4天前
|
存储 API 数据安全/隐私保护
【02】整体试验思路,在这之前我们发现sec_uid,sec_uid是什么和uid的关系又是什么?相互如何转换?python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡
【02】整体试验思路,在这之前我们发现sec_uid,sec_uid是什么和uid的关系又是什么?相互如何转换?python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡
36 6
|
4天前
|
C语言 Python
Python学习:内建属性、内建函数的教程
本文介绍了Python中的内建属性和内建函数。内建属性包括`__init__`、`__new__`、`__class__`等,通过`dir()`函数可以查看类的所有内建属性。内建函数如`range`、`map`、`filter`、`reduce`和`sorted`等,分别用于生成序列、映射操作、过滤操作、累积计算和排序。其中,`reduce`在Python 3中需从`functools`模块导入。示例代码展示了这些特性和函数的具体用法及注意事项。
|
12天前
|
Python
python pandas学习(一)
该代码段展示了四个主要操作:1) 删除指定列名,如商品id;2) 使用正则表达式模糊匹配并删除列,例如匹配订单商品名称1的列;3) 将毫秒级时间戳转换为带有时区调整的日期时间格式,并增加8小时以适应本地时区;4) 将列表转换为DataFrame后保存为Excel文件,文件路径和名称根据变量拼接而成。
20 3
|
3月前
|
Python
Python Internet 模块
Python Internet 模块。
138 74
|
3月前
|
Python 容器
Python学习的自我理解和想法(9)
这是我在B站跟随千锋教育学习Python的第9天,主要学习了赋值、浅拷贝和深拷贝的概念及其底层逻辑。由于开学时间紧张,内容较为简略,但希望能帮助理解这些重要概念。赋值是创建引用,浅拷贝创建新容器但元素仍引用原对象,深拷贝则创建完全独立的新对象。希望对大家有所帮助,欢迎讨论。
|
3月前
|
Python
Python学习的自我理解和想法(10)
这是我在千锋教育B站课程学习Python的第10天笔记,主要学习了函数的相关知识。内容包括函数的定义、组成、命名、参数分类(必须参数、关键字参数、默认参数、不定长参数)及调用注意事项。由于开学时间有限,记录较为简略,望谅解。通过学习,我理解了函数可以封装常用功能,简化代码并便于维护。若有不当之处,欢迎指正。
|
2月前
|
数据可视化 数据挖掘 大数据
1.1 学习Python操作Excel的必要性
学习Python操作Excel在当今数据驱动的商业环境中至关重要。Python能处理大规模数据集,突破Excel行数限制;提供丰富的库实现复杂数据分析和自动化任务,显著提高效率。掌握这项技能不仅能提升个人能力,还能为企业带来价值,减少人为错误,提高决策效率。推荐从基础语法、Excel操作库开始学习,逐步进阶到数据可视化和自动化报表系统。通过实际项目巩固知识,关注新技术,为职业发展奠定坚实基础。
|
2月前
|
Python
[oeasy]python057_如何删除print函数_dunder_builtins_系统内建模块
本文介绍了如何删除Python中的`print`函数,并探讨了系统内建模块`__builtins__`的作用。主要内容包括: 1. **回忆上次内容**:上次提到使用下划线避免命名冲突。 2. **双下划线变量**:解释了双下划线(如`__name__`、`__doc__`、`__builtins__`)是系统定义的标识符,具有特殊含义。
35 3
|
4月前
|
开发者 Python
如何在Python中管理模块和包的依赖关系?
在实际开发中,通常会结合多种方法来管理模块和包的依赖关系,以确保项目的顺利进行和可维护性。同时,要及时更新和解决依赖冲突等问题,以保证代码的稳定性和可靠性
163 62

热门文章

最新文章