8-1更新 OLED光电门加速度计
本帖最后由 createskyblue 于 2020-8-2 14:20 编辑2020/8/1 建军节大更新:
1.更新UI界面2.修复数据区域数组溢出的问题:扩增数组3.增加测试模式,可以通过在启动动画结束前遮挡光敏电阻从而进入模式选择画面,按照提示继续遮挡即可进入测试模式4.测试模式中可以测试两个传感器的灵敏度,用于组装实验教具后验证可用性5.增加启动动画替代原本的随机静态画面
6.恢复并增强初代版本的动态光线适应机制,目前因为环境光的改变而被迫重启校准光敏电阻
https://gitee.com/createskyblue/PhotoelectricDoor/raw/master/WINDOWS/img/WorkMode.gif
https://gitee.com/createskyblue/PhotoelectricDoor/raw/master/WINDOWS/img/TestMode.gif
===============================================================
在这次实验,我们使用STM32单片机和由两个光敏电阻以及平行光源组组成的A和B两个光电门来计算运动物体的加速度,物体通过两个光敏电阻时会遮挡平行光,此时stm32单片机会记录下两个光敏电阻上的电位变化通过串口通讯把波形上传到计算机以待进一步分析,并且在STM32的OLED显示屏上显示出两个光敏电阻的遮光时间以及通过两个光敏电阻之间的时间差。
上图为为实验具体示意图,现在有一遮光长度为7.7CM的热敏打印机,我们对其进行加速直到打印机进入光电门A,计算机记录下第一个遮光时间t1,待热敏打印机通过光电门B时,计算机会记录下通过离开光电门A后直到进入光电门B的时间差t2,最后热敏打印机离开光电门B,计算机最后记录下第二个遮光时间t3。热敏打印机进入光电门A后受到摩檫力作匀减速运动,利用热敏打印机遮光长度7.7CM组合t1和t3可以计算出通过光电门A、B的速度V1和V2,最后利用时间差t3可以计算出热敏打印机作匀减运动的加速度!
为了方便在大屏幕上进行演示,我还制作了上位机软件,根据STM32通过串口通讯上传的波形数据以及处理好的时间数据对加速度进行计算
我们再重复进行多次实验,去除最高和最低的数据,得出这张加速度表
获取所有资料
Arduino STM32下位机源代码下载
上位机教学配套程序 或 上位机教学程序源代码下载
**** Hidden Message *****
# 附录-1
###### 提示:STM32光电门程序后OLED会显示出启动信息,随后自动进行调光,此时请确保将光敏电阻置于实验环境下,当调光结束后OLED会显示两张启动画面中的一张譬如:
###### 则表明调光程序已自动完成,如果光照条件改变,请务必按下复位按钮重新调光!启动画面结束后随后进入操作界面,并且光电门时有顺序之分的,可以根据附带的接线图所示,光电门A连接到单片机的A0,光电门B连接到单片机的A1。进行试验时确保被测物先通过光电门A再通过光电门B,并且确保两光电门之间保持合适距离,确保收集到准确的实验数据!
# 附录-2
WINDOWS上位机软件所在目录
上位机软件操作
望各位老师使用愉快!若遇到问题可以发邮件到createskyblue@outlook.com
更新软件源,修复图片打不开的问题 谢谢楼主 Stm32下位机1.2版本更新:
提交 / dc68bdc02854052643ed3e936d5233074398242b
更新动态光适应机制
1.相比于上一个版本,该版本无需因为光照条件的改变从而为了准确性被迫重启
2.上次更新:修复传感器历史数据列表没有正确移动的问题 2020/8/1 建军节大更新:
1.更新UI界面
2.修复数据区域数组溢出的问题:扩增数组
3.增加测试模式,可以通过在启动动画结束前遮挡光敏电阻从而进入模式选择画面,按照提示继续遮挡即可进入测试模式
4.测试模式中可以测试两个传感器的灵敏度,用于组装实验教具后验证可用性
5.增加启动动画替代原本的随机静态画面
6.恢复并增强初代版本的动态光线适应机制,目前因为环境光的改变而被迫重启校准光敏电阻
页:
[1]