所有分类
主题 主题
平台 平台
我的工作台
userHead
注册时间 [[userInfo.create_time]]
创造力 [[userInfo.creativity]]
[[userInfo.remark]]
[[d.project_title]]
articleThumb
[[d.material_name]]
timelineThumb
进入工作台
折叠
所有分类 我的工作台
展开

【PinPong Board】测评2:用代码舞动pinpong板

kylinpoet kylinpoet 2021-05-18 21:53:41
0
0
简单

笔者在前文中大致分析了pinpong板用途和使用环境,【PinPong Board】测评1:点灯贴

本文,就来谈谈pinpong板的实际应用。

因为DF官方没有提供pp板的相关教程,这里就不展开讲,只以产品经理在测试群里发的教程和示例代码为例,测试pp板板载各个传感器的功能。

 

projectImage
步骤1 步骤1
光线传感器:

光线传感器,接在A1口。示例代码里的注释说明也是接在A1口的,

但奇怪的是代码为什么却是去读了A2???

projectImage

所以需要做一点点修改,如下代码:

代码 代码
	                    					#效果:打印PinPong主板板A1口模拟值
#接线:使用windows电脑连接一块PinPong主控板

import time
from pinpong.board import Board,Pin,ADC  #导入ADC类实现模拟输入

Board("uno").begin()  #初始化,选择板型和端口号,不输入端口号则进行自动识别

adc1 = ADC(Pin(Pin.A1)) #将Pin传入ADC中实现模拟输入

while True:
  v = adc1.read()  #读取A2口模拟信号数值
  print("light value =", v)
  time.sleep(0.5)
	                    				

运行后,我们可以看到,随着灯光的变化,程序能打印相关的变化量,取值区间应该是[0~1024],但是我用手机强光去照,最大只能到1019。。。看来极值处理地不错!!!

projectImage
步骤2 步骤2
声音传感器:
projectImage

声音传感器接在A2口。代码运行正常,这里就不展示具体代码了。

声音传感器的取值范围也是:[0~1023],能到最大值 1023,可是为什么最小值会在400以上?(0除外)

继续黑人问号脸??????

步骤3 步骤3
陀螺仪:
projectImage
代码 代码
	                    					# -*- coding: utf-8 -*-

#效果:打印检测到的加速度与角速度
#接线:使用windows电脑连接一块arduino主控板

import time
from pinpong.board import Board
from pinpong.libs.dfrobot_mpu6050 import MPU6050

Board("PinPong Board").begin()#初始化,选择板型和端口号,不输入端口号则进行自动识别

accelgyro = MPU6050()

accelgyro.init()
 
if accelgyro.connection():
    print("MPU6050 connection successful")
else: 
    print("MPU6050 connection failed")

while True:
    buf = accelgyro.get_motion6()
    print("ax:{} ay:{} az:{} gx:{} gy:{} gz:{}".format(buf[0], buf[1], buf[2],buf[3],buf[4],buf[5]))
    time.sleep(0.5)
	                    				

以上是陀螺仪的代码,我们可以看到,

Board("PinPong Board").begin()#初始化,选择板型和端口号,不输入端口号则进行自动识别

这句代码,和光线传感器里的代码,

Board("uno").begin()  #初始化,选择板型和端口号,不输入端口号则进行自动识别

一会儿 “PinPong Board”, 一会儿 "uno"的,是为了说明这里的参数有多飘逸吗?还是说pp板无论是用

这两个参数的哪一个都可以?(因为pp板的核心是uno,实际上这里是通的,另外看了下源代码,这里的大小写可以任意。)

继续黑人问号脸???

静止时的输出结果是魔性的非标准值:

ax:2164 ay:-312 az:15808 gx:-208 gy:243 gz:134

先不说具体的参数介绍,难道工程师已经懒到连个出厂校准也不做吗????

另外通过X,Y,Z三个方向的测试,陀螺仪从效果上来看是运行正常的。

不过因为变化波动比较大, 参量就不好处理了(或者笔者太菜?),我觉得示例代码最好给个定量分析。

步骤4 步骤4
其它

这次的测评先到这里,因为RGB灯在前文已经介绍,这里不再赘述。WIFI模块连不上也不说了。下次有机会再继续了解下板子上面的几个传感器。

不过为什么今天的三个传感器都是满满的槽点呢?难道是因为今晚的菜不香吗?酒不好喝吗?

嗯,我想也是的。

Makelog作者原创文章,未经授权禁止转载。
0
0
评论
[[c.user_name]] [[c.create_time]]
[[c.parent_comment.count]]
|
[[c.comment_content]]