用TFmini-Plus实现人流、身高测量
用TFmini-Plus实现人流、身高测量
本方案是利用TFmini-Plus和Arduino-UNO板结合开发出的小设备。
其作用为:统计人流数量以及相应目标身高高度。
系统搭建、功能实现——视频链接: https://v.qq.com/x/page/m08832c1v9x.html
北醒(北京)光子科技有限公司: http://www.benewake.com
系统结果展示:
本文结构
- 实现功能需要的硬件和软件
- 人流身高测量原理
- 过程、结果
- 附加代码
硬件和软件
- Benewake TFmini-Plus 标版
- Arduino-UNO板
- 电脑
- 连接线
Benewake TFmini-Plus 工作原理
Benewake TFmini-Plus 采用的是市场上流行的TOF测距原理。
TOF(Time of fligh),直译为飞行的时间。飞行时间法测距是通过测量发射脉冲与返回脉冲的飞行(往返)时间,来得到目标距离。
人流身高测量原理
- 雷达启动后,设置安装高度、身高限度、下限值。
- 当人进入探测区域时,数据会出现上升,输出人数,每出现此情况,人数加1,输出人数。
- 当人处于探测区域时,数据会在身高限定以上波动,此时比较赋值Height,Height为人在探测区域内数据波动的最大值。
- 当人走出探测区域时,数据会出现下降,输出Height。
过程
系统接线示意图如下:
TFmini Plus产品线序定义为:红色+5V,黑色GND,绿色TX,白色RX;TFmini-Plus供电电压为5V,所以直接连接Arduino板的5V和GND即可,其他雷达请查阅产品规格书,确保供电正常;
串口通信连接需要注意,对于Arduino UNO板雷达的TX端接板子的pin 2口(软串口Serial1的RX),雷达的RX端接板子的pin 3口(软串口Serial1的TX),这个跟后文中的程序编写有关。
系统工作流程图如下:
系统实际接线图如下:
结果
功能实现代码
#include<SoftwareSerial.h>//软串口头文件
SoftwareSerial Serial1(2,3); //定义软串口名称为Serial1,并把pin2定为RX,pin3定为TX
/*对于有多个串口的arduino板如DUE板,注释掉上面两段代码,直接使用Serial1串口*/
int dist;//雷达实测距离值
int strength;//雷达信号强度,强度在100以下数据不可信
int IH=230;//雷达安装高度(需设置),需要根据实际黑色物体进行校正
int H;//身高值
int h=0;//上一次身高值
int check;//校验数值存放
int i;
int Number=0;//人数
int Height=0;//身高高度最大值
int up=50;//身高限定(需设置),物体身高在此值以上才有效
int down=40;//下限值(需设置),高度在下限值以下突破身高限度才会计数,防止高度处在恰好身高限度时导致数据波动,产生错误数据
int uart[9];//存放雷达测量的数据
const int HEADER=0x59;//数据包帧头
void setup()
{Serial.begin(115200);//设置arduino与电脑连接串口的波特率Serial1.begin(115200);//设置雷达与arduino连接串口的波特率
}
void loop()
{if (Serial1.available())//查看串口是否有数据输入{if(Serial1.read()==HEADER)//判断数据包帧头0x59{uart[0]=HEADER;if(Serial1.read()==HEADER)//判断数据包帧头0x59{uart[1]=HEADER;for(i=2;i<9;i++)//存储数据到数组{uart[i]=Serial1.read();} check=uart[0]+uart[1]+uart[2]+uart[3]+uart[4]+uart[5]+uart[6]+uart[7];if(uart[8]==(check&0xff))//按照协议对收到的数据进行校验{dist=uart[2]+uart[3]*256;//计算距离值strength=uart[4]+uart[5]*256;//计算信号强度值 H=IH-dist;//计算身高值/*测量人数*//*原理:当数据从下限值突破身高限定值则人数加1*/if(H>=up&h<down)//当人进入测量区域,人数加一{Number=Number+1;h=H; Height=H;Serial.print("Number = ");Serial.print(Number);//输出数量值Serial.print('\t');}if(H>=up&h>=down)//当人处于测量区域内,通过比较得出此期间的最大值{if(Height<H){Height=H;}}if(H<down&h>=up)//当人走出测量区域,输出身高最大值,同时将最大值重新置零{Serial.print("Height = ");Serial.print(Height);//输出身高值Serial.print('\n');h=H;Height=0;}
// Serial.print("H = ");
// Serial.print(H);//输出身高值
// Serial.print('\t');
// Serial.print("dist = ");
// Serial.print(dist);//输出雷达测试距离值
// Serial.print('\t');
// Serial.print("strength = ");
// Serial.print(strength);//输出信号强度值
// Serial.print('\n');}}}}
}
用TFmini-Plus实现人流、身高测量相关推荐
- 身高测量仪红外传感测距模块应用方案 WTU201F2 B004 低功耗
身高测量仪被广泛用于医疗.教育等领域,而红外测距模块在身高测量仪中的应用则成为了一种新的技术手段.红外测距模块是基于红外线技术的一种测距器件,在身高测量仪中,红外测距模块能够精准地测量出人体的高度. ...
- TFmini和TFmini-Plus——激光雷达模组 资料汇总
本文主要介绍TFmini和TFmini-Plus激光雷达相关资料. 目录 产品基本介绍 产品基本FAQ 与开源硬件的基本匹配 其他(I²C版参考方案) 应用方案 一.产品基本介绍 产品规格书.产品使用 ...
- 准确测试身高的软件,情侣身高对比软件-身高模拟对比软件预约 v1.0最新版_5577安卓网...
情侣身高对比软件是一款非常简单实用的身高比较软件!有了它用户就能精准模拟对比身高,一键输入相关数据即可轻松模拟对比,操作简单便捷,喜欢的小伙伴可不要错过哦! [特别说明] 该软件暂未正式上线,敬请期待 ...
- 苹果手机测距离_iPhone 12 Pro可直接测身高 原来LiDAR扫描仪这样用
许多人都知道iPhone12Pro配备了新的黑科技--LiDAR扫描仪,但可能并不知道它有什么用.根据苹果的说法,LiDAR扫描仪可以增强现实体验,而且该传感器还有另一个独特功能:能够使用Measur ...
- matalb曲线图只有点没有线_生长发育的基本规律和身高曲线图应用
"生长是发育的前提,发育寓于生长之中." 生长发育从医学上来讲是从受精卵开始身体形状和功能完全发育成熟的连续过程,它贯穿胎儿期.儿童期.青春期甚至成年,例如:身体长高变壮,智力变高 ...
- 情侣测试身高软件,情侣身高对比软件-身高模拟对比软件预约v1.0最新版_5577安卓网...
情侣身高对比软件是一款非常简单实用的身高比较软件!有了它用户就能精准模拟对比身高,一键输入相关数据即可轻松模拟对比,操作简单便捷,喜欢的小伙伴可不要错过哦! [特别说明] 该软件暂未正式上线,敬请期待 ...
- 苹果手机测距离_iphone 12 pro测身高怎么玩? iPhone12 pro测身高玩法教程分享[多图]-软件教程...
iphone 12 pro测身高怎样操作?新的相机功能,实现深度使用.通过脉冲形式,掌握长度的数值,让用户更直观查看. 这是iphone系统的一个新功能,使用这个手机的用户,可以使用自己的手机实验一下 ...
- 双目测距测深度_TOF还能这么玩?荣耀V20黑科技升级变测距神器
[PConline 评测]说到2019年顶级旗舰手机上最热门的功能,非TOF传感器莫属,通过后置TOF传感器,手机可以捕捉到更加准确和广阔的深度信息,实现体感游戏,美体瘦身等"黑科技&quo ...
- 盘点数据处理工具,手把手教你做数据清洗和转换
导读:原始数据本身没有用.为了使它实际有用,你需要准备它. 作者:Mars Geldard, Jonathon Manning, Paris Buttfield-Addison, Tim Nugent ...
- 基于51单片机的体脂检测系统设计(51+oled+hx711+us100)
功能说明: 1.身高测量(us100触发模式) 2.体重测量(hx711) 3.体脂计算(通过按键进行计算) 4.体脂预警(通过按键调整阈值) 资料说明: 体重测量部分采用自写体重秤初始清零程序,实测 ...
最新文章
- 如果做不了合格的工程师,那就做个艺术家吧
- 军队计算机技术职称考试 类别,军队人员参加计算机考试科目设置和报考规定...
- 关于mysql优化_MYSQL---关于MYSQL优化
- 10行Python代码自动清理电脑内重复文件,解放双手!
- 神经科学与“记忆印记”
- spring gateway 限流持久化_Spring Cloud Gateway网关如何快速实施限流方案?-Part 6
- typora绑定github博客_博客生产线:WordPress(平台)+Typora(编辑器)+GitHub(图床)
- Grasshopper Essential Training Grasshopper基础教程 Lynda课程中文字幕
- python可执行文件 情人节快乐_各位情人节快乐, Python帮忙撒狗粮, 我连夜做了这个程序!...
- Struts2拦截器实现异常处理
- MATLAB视频运动目标检测
- 怎样把视频文件压缩到最小?
- JZOJ1900. 【2010集训队出题】矩阵
- 使用vmware+centos7+openfiler搭建达梦DSC两节点集群
- 我的理解之JAVA中的4种访问权限
- a8处理器相当于骁龙几_曾受人追捧的A8处理器,放在现在是什么水平了?
- java fxml教程_openjfx(javaFX)完整学习指南(教程)
- 三星80亿美元收购Harmon真正意图是它?
- 在Mysql中无符号是什么意思博客_mysql中的unsigned是什么意思???
- 用计算机说早上好,早上好的问候语简短 高情商会说的60句早安