4253| 0
|
手势控制电机运动 |
本帖最后由 gada888 于 2022-2-27 13:42 编辑 最近一直再用python,想说用DF提供的pinpong库来写个程序。第一没离开python,第二能用到Arduino。毕竟arduino用的比较顺手。好了,言归正传。今天做个什么呢。就是用PAJ7620U2手势识别传感和DF新出的电机和灯光调速模块来做个项目。因为这两个模块在工具盒里躺了很久了。得让它们出来热热身了。简单说。我会让手势识别两个动作,左和右,分别是Left和Right。left是电机启动,right是电机停止。PAJ7620U2是I2C模块。这个好连线。但如果再接个电机和灯光模块,代码量就会加大。为了简便。就巧妙的用了模块上的ADC接口做数字接口来使用。下面会有详细的介绍。 配件清单
一,介绍下电机和灯光模块 电位器的模拟口就是我即将使用的模拟变数字口。后面还会讲到。 二 介绍下手势模块 PAJ7620U2手势识别传感器是一款以IIC通信的3D手势识别交互式传感器。工作电流仅3.5mA, 手势识别距离达20mm。在最远20cm范围内,可以识别的手势多达13种。该手势传感器具备良好的手势识别稳定性,反应快,准确率高,可识别多种手势。支持两种手势识别模式,高速模式(可识别9种)和低速模式(可识别13种)。支持用户自定义识别手势。 PAJ7620U2手势识别传感器在高速模式下可识别上,下,左,右,前,后,顺时针,逆时针,快速挥手。而低速模式除了支持高速基础包含的所有手势外,还支持慢速上下,慢速左右,慢速前后,乱序。此外,低速模式可以自定义单位采样时间,还可根据自己需要轻松定义识别手势。 三 看下连线图 PAJ7620U2是IIC连接口,灯光和电机模块用了数字口D6.刚才说到模块赋予ADC的口可以接UNO的数字口,是真的吗?首先数字口接收的是0或1的值,模拟口接收的是0-255的任意值。但其实A0-A5适用于模拟和数字口。本例可以理解为用ADC口去采集到了0-1023间的一个数字信号。不知这么说你们能不能听明白。 四 看下程序在mind+里运行的情况 我们看下方python打印的信息。其中包括很重要的部分在下图 这里有每个动作的代码和定义。根据这个定义(decription)做一个判断,我们很轻松的完成控制电机的代码 if description == "Left": 当然首先要对电机的针脚进行定义,用‘电机和灯光模块’的模拟口连Arduino的D6数字口。 motor = Pin(Pin.D6, Pin.OUT) 下面是完整代码
|
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed