python鞋子_Micropython 鞋码匹配仪(标题图与内容无关)

本文介绍了鞋码匹配仪,它利用超声波测距原理,通过计算超声波放出与返回时间测定距离,结合鞋码匹配仪固有大小变化得到脚的尺寸和鞋码。还给出所需元器件、超声波模块工作原理、数码管显示控制方法,最后提供了Python源代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实物略low,不上图了哈哈。实测有一点点误差。下面是原理和代码。

鞋码匹配仪,利用超声波测距的原理。通过使用超声波遇到障碍返回的特性,计算超声波放出与返回的时间计算来测定障碍与超声波模块的距离。

鞋码匹配仪的固有大小已知,在脚放入时,大小会发生改变 使用已知距离对改变后的距离做差获得脚的尺寸,再通过尺寸与距离的转换得到正确的鞋码(此处使用标准鞋码)。

1

所需元器件

超声波模块 1个

TPYBoard v102板子 1块

四位数码管 1个

micro USB数据线 1条

杜邦线 若干

2

超声波模块工作原理

(1)采用IO口TRIG触发测距,给最少10us的高电平信号。

(2)模块自动发送 8 个 40khz 的方波,自动检测是否有信号返回。

(3)有信号返回,通过 IO 口 ECHO 输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2。

如下图接线,VCC 供 5V电源, GND 为地线,TRIG 触发控制信号输入,ECHO 回响信号输出等四个接口端。

3

控制四位数码管显示数字

(1)1、2、3、4是“位选”针脚,用于控制具体哪一位显示。

(2)a、b、c、d、e、f、g、dp(h)是“段选”针脚,用法和1位数码管一致,用来显示具体的数值。

4

接线图

5

源代码

import pyb

from pyb import Pin

from pyb import Timer

from machine import SPI,Pin

Trig = Pin('X2',Pin.OUT_PP)

Echo = Pin('X1',Pin.IN)

num=0

flag=0

run=1

def start(t):

global flag

global num

if(flag==0):

num=0

else:

num=num+1

def stop(t):

global run

if(run==0):

run=1

start1=Timer(1,freq=10000,callback=start)

stop1=Timer(4,freq=2,callback=stop)

sizecc = [35,36,37,38,39,40,41,42,43,44,45,46,47]#280-47 -5

while True:

if(run==1):

Trig.value(1)

pyb.udelay(100)

Trig.value(0)

while(Echo.value()==0):

Trig.value(1)

pyb.udelay(100)

Trig.value(0)

flag=0

if(Echo.value()==1):

flag=1

while(Echo.value()==1):

flag=1

if(num!=0):

#print('num:',num)

distance=num/1000*34000/2

print('Distance')

print(distance,'mm')

cc = (int)((distance-215)/5)

if cc<0:

cc=0

elif cc>12:

cc=12

print(sizecc[cc],'cc')

flag=0

run=0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值