光流传感器进行累积测试
【摘要】
光流传感器位移累加结果
§01 光流传感器
在前面对于光流传感器进行了初步的测试, 通过MicroPython硬件平台 获得了光流传感器的输出数据。...
光流传感器位移累加结果
§01 光流传感器
在前面对于光流传感器进行了初步的测试, 通过MicroPython硬件平台 获得了光流传感器的输出数据。 这些数据反映了光流传感器移动距离。 下面检测一下光流传感器移动累计功能。
一、修改程序测试
对于程序修改包括两点, 第一点将查询UART周期改为10ms,第二点将mx,my进行累加。 程序每隔0.2秒输出累加结果。 可以看到累加结果反映了传感器相对于其他物体平移的距离。
※ 总 结 ※
在这里初步测试了光流传感器位移累加结果, 通过实验发现它反映了光流传感器相对于其他传感器位移的结果。
一、测试程序
from machine import Pin,UART
import time
uart = UART(1, baudrate=19200)
print(uart)
inbuf = bytes([0]*7)
recebuf = b''
mx = 0
my = 0
squal = 0
sigmax = 0
sigmay = 0
printcount = 0
while True:
if uart.any() > 0:
inb = uart.read(uart.any())
recebuf = recebuf + inb
buflen = len(recebuf)
delflag = 1
if buflen > 0:
id = 0
for b in recebuf:
if b == 254:
if buflen >= id+9:
mx = recebuf[id+3]
mx = mx*256 + recebuf[id+2]
my = recebuf[id+5]
my = my*256 + recebuf[id+4]
squal = recebuf[id+6]
if mx > 0x7fff: mx -= 0x10000
if my > 0x7fff: my -= 0x10000
sigmax += mx
sigmay += my
else:
recebuf = recebuf[id:]
delflag = 0
break
id += 1
if delflag > 0: recebuf = b''
time.sleep_ms(10)
printcount += 1
if printcount >= 20:
printcount = 0
print(sigmax, sigmay)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
文章来源: zhuoqing.blog.csdn.net,作者:卓晴,版权归原作者所有,如需转载,请联系作者。
原文链接:zhuoqing.blog.csdn.net/article/details/125686411
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)