当前位置:网站首页>【花雕体验】14 行空板pinpong库测试外接传感器模块(之一)
【花雕体验】14 行空板pinpong库测试外接传感器模块(之一)
2022-06-30 07:26:00 【驴友花雕】
1、pinpong库是一套控制开源硬件主控板的Python库,基于Firmata协议并兼容MicroPython语法,5分钟即可让你上手使用Python控制开源硬件。借助于pinpong库,直接用Python代码就能给各种常见的开源硬件编程。其原理是给开源硬件烧录一个特定的固件,使开源硬件可以通过串口与电脑通讯,执行各种命令。
pinpong库的名称由“Pin”和“Pong”组成,“Pin”指引脚,“PinPong”为“乒乓球”的谐音,指信号的往复。pinpong库的设计,是为了让开发者在开发过程中不用被繁杂的硬件型号束缚,而将重点转移到软件的实现。哪怕程序编写初期用Arduino开发,部署时改成了掌控板,只要修改一下硬件的参数就能正常运行,实现了“一次编写处处运行”。
2、pinpong库导入方法
pinpong库由于支持众多的主控板及开源硬件,因此分成了3个包,board、extension和libs,board包中放置主板支持的功能及常用库,extension为定制类主控,libs中放置其他传感器的扩展库。pinpong库支持多块主控板的使用,因此可以指定板型及端口号并生成对象,因为行空板上固定为协处理器并且端口号固定,因此可以省略掉这些参数而直接初始化。
from pinpong.board import xxx #board包中的库
from pinpong.libs.xxx #libs包中的库
from pinpong.extension.xxx #extension包中的主板
Board().begin() #初始化,连接协处理器,检查固件为空或版本不对则自动烧录
3、实验硬件
4、9G舵机
是一种位置(角度)伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。舵机主要由外壳、电路板、无核心马达、齿轮与位置检测器所构成。其工作原理是由接收机或者单片机发出信号给舵机,其内部有一个基准电路,产生周期为20ms,宽度为1.5ms 的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。经由电路板上的IC 判断转动方向,再驱动无核心马达开始转动,透过减速齿轮将动力传至摆臂,同时由位置检测器送回信号,判断是否已经到达定位。适用于那些需要角度不断变化并可以保持的控制系统。当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。一般舵机旋转的角度范围是0 度到180 度。
PWM信号和舵机转动角度的关系
说到舵机的控制信号,一般是脉宽调制(PWM)信号,如下图,直观反映了PWM信号和舵机转动角度的关系,你也可以简单的理解为,通过给舵机通电的时间控制,结合角度传感器的反馈信号检测和控制,实现了舵机的精确角度控制。舵机的控制信号周期为20MS的脉宽调制信号(PWM),其中脉宽从0.5ms-2.5ms,相应的舵盘位置从0-180度,呈线型变化。也就是说,给舵机提供一定的脉宽,他的输出轴就会保持一定的对应角度,无论外接转矩怎么改变,知道给他提供另外一个脉冲信号,他才会改变输出角度到新的对应的位置上。舵机内部有一个基准电路,产生周期为20MS,宽度为1.5MS的脉冲信号,有一个比较器,将外加信号与基准信号相比较,判断出方向和大小,从而产生电机的转动信号。舵机是一种位置伺服驱动器,转动范围不能超过180度,适用于那些需要不断变化并可以保持的驱动器中,比喻说机器人的关节、飞机的舵面等。
【花雕体验】14 行空板pinpong库测试外接传感器模块(之一)
行空板测试外接传感器模块——Mind+代码编程
测试程序二十一:行空板P21口控制舵机
实验接线:行空板P21口接9G舵机模块
#【花雕体验】14 行空板pinpong库测试外接传感器模块(之一)
#行空板测试外接传感器模块——Mind+代码编程
#测试程序二十一:行空板P21口控制舵机
#实验接线:行空板P21口接9G舵机模块
from pinpong.extension.unihiker import *
from pinpong.board import Board,Pin
from pinpong.board import Servo
import time
Board().begin()
servo1 = Servo(Pin((Pin.P21)))
while True:
servo1.write_angle(45)
time.sleep(2)
servo1.write_angle(90)
time.sleep(2)
servo1.write_angle(180)
time.sleep(2)
servo1.write_angle(0)
time.sleep(2)
实验测试视频(29秒)
https://v.youku.com/v_show/id_XNTg4MTgyMDg0OA==.html
【花雕体验】14 行空板pinpong库测试外接传感器模块(之一)
行空板测试外接传感器模块——Mind+图形编程
测试程序二十二:行空板P21口控制舵机
实验接线:行空板P21口接9G舵机模块
实验串口返回情况
实验场景图
5、DHT11温湿度传感器
DHT11是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。产品为4针单排引脚封装。连接方便,特殊封装形式可根据用户需求而提供。
模块描述
(1)可以检测周围环境的湿度和温度
(2)传感器采用DHT11
(3)湿度测量范围:20%-95%(0度-50度范围)湿度测量误差:±5%
(4)温度测量范围:0度-50度 温度测量误差:±2度
(5)工作电压3.3V-5V
(6)输出形式 数字输出
(7)设有固定螺栓孔,方便安装
(8)小板PCB尺寸:3.2cm*1.4cm
(9)电源指示灯(红色)
(10)每套重量约为8g
【花雕体验】14 行空板pinpong库测试外接传感器模块(之一)
行空板测试外接传感器模块——Mind+代码编程
测试程序二十三:行空板P21口读取DHT11温湿度传感器数值
实验接线:行空板P21口接DHT11温湿度传感器模块
#【花雕体验】14 行空板pinpong库测试外接传感器模块(之一)
#行空板测试外接传感器模块——Mind+代码编程
#测试程序二十三:行空板P21口读取DHT11温湿度传感器数值
#实验接线:行空板P21口接DHT11温湿度传感器模块
from pinpong.extension.unihiker import *
from pinpong.board import Board,Pin
from pinpong.board import DHT11
import time
Board().begin()
print("行空板P21口读取DHT11温湿度传感器数值")
DHT11 = DHT11(Pin((Pin.P21)))
while True:
print("温度=")
print(DHT11.temp_c())
print("湿度=")
print(DHT11.humidity())
time.sleep(1)
实验串口返回情况
【花雕体验】14 行空板pinpong库测试外接传感器模块(之一)
行空板测试外接传感器模块——Mind+图形编程
测试程序二十四:行空板P21口读取DHT11数值并控制LED
实验接线:行空板P21口接DHT11温湿度传感器模块
行空板P22口接LED模块
实验串口返回情况
实验场景图
(待续)
边栏推荐
- Is it safe to open a stock account by mobile phone? What do I need to prepare for opening an account?
- Armv8 (coretex-a53) debugging based on openocd and ft2232h
- Common sorting methods
- February 14, 2022 [reading notes] - life science based on deep learning Chapter 2 Introduction to deep learning (Part 1)
- Label the picture below the uniapp picture
- Digital white paper on total cost management in chain operation industry
- Installation software operation manual (continuous update)
- DXP shortcut key
- Video player (I): process
- 2021-10-29 [microbiology] qiime2 sample pretreatment form automation script
猜你喜欢
期末复习-PHP学习笔记7-PHP与web页面交互
期末複習-PHP學習筆記6-字符串處理
深度学习——GRU单元
December 4, 2021 - Introduction to macro genome analysis process tools
Digital white paper on total cost management in chain operation industry
Global digital industry strategy and policy observation in 2021 (China Academy of ICT)
C language implements sequential queue, circular queue and chain queue
Network, network card and IP configuration
深度学习——Bounding Box预测
Processes, jobs, and services
随机推荐
January 23, 2022 [reading notes] - bioinformatics and functional genomics (Chapter 6: multiple sequence alignment)
ADC basic concepts
C language implementation sequence stack
Video player (I): process
Cmake generate map file
DXP shortcut key
Calculate Euler angle according to rotation matrix R yaw, pitch, roll source code
2021 private equity fund market report (62 pages)
Processes, jobs, and services
深度学习——LSTM
Three software installation methods
Final review -php learning notes 5-php array
Basic operation command
Dynamic memory management
November 19, 2021 [reading notes] a summary of common problems of sneakemake (Part 2)
期末复习-PHP学习笔记7-PHP与web页面交互
November 22, 2021 [reading notes] - bioinformatics and functional genomics (Chapter 5, section 4, hidden Markov model)
Personal blog one article multi post tutorial - basic usage of openwriter management tool
Xiashuo think tank: 125 planet updates reported today (packed with 101 meta universe collections)
Permutation and combination of probability