基于多方面的考虑和相应的调查,我们希望做一个宿舍电梯,为学生提供一个更方便、更安全的上下床方式。本设计以开发板为主控,结合压力传感器和红外避障传感器的电机驱动模块,实现了一个自动升降、自动停止、自动调速的宿舍电梯模型系统。
(第一次写博客,记录我大一做的一节课。如有不妥,请包容。)
一、前言项目背景我国南方大部分大学宿舍都是上床睡觉的模式。学生需要爬梯子上下床,不方便,容易让学生心理上抗拒早起(doge),容易造成安全问题。基于多方面的考虑和相应的调查,我们希望做一个宿舍电梯,为学生提供一个更方便、更安全的上下床方式。
但由于时间和技术的限制,现在以模型的形式呈现。
本设计采用Arduino uno R3开发板作为主控,结合FSR402压力传感器、红外避障传感器和L298N电机驱动模块,实现了自动升降、自动停止、自动调速的宿舍电梯模型系统。
二、系统架构实现原理:我从网上买了一个科教益智模型,改装后把它原来的有线控制器改成了压力控制。其思路是利用压力传感器检测是否有物体及其重量,从而控制电机是否转动以及转动的速度。红外检测模块安装在电梯轨道的顶部和底部,判断电机的位置,然后控制电机的旋转方向。
由单片机进行核心控制,最终实现自动升降和按压力调速的功能。
硬件设计:1。模块分析模型主体:一个科学教育益智模型(木制电梯模型)
途远网络
单芯片处理器:Arduino uno R3开发板
红外探测模块:某宝购买的红外避障传感器。
探测距离为2-30cm。顺时针调节电位计以增加检测距离。逆时针调节电位计,减少检测距离,检测角度为35度。
压力传感模块:FSR402压力传感器,线性电压转换模块。
检测是否有压力;利用匹配线性电压转换模块实现PWM调速
电机驱动:L298N电机驱动模块
接收Arduino信号,通过控制高低电平调整电机转向。
2.硬件框图和物理连接图硬件框图
物理连接图
软件设计各硬件框图:1 .开发平台使用Arduino IDE进行软件开发。
它采用C/C++编程,基本语法与C/C++一致,但主函数main()分为初始化函数setup()和主循环()。
准备阶段准备阶段初始化阶段setup()执行一次执行阶段loop()执行# include # define...Void Setup () {...} Void循环(){...} 2.软件流程
3.代码实现(1) Pin和变量设置
引脚变量定义和初始化代码(2)在2)设置()中设置引脚模式
(3)代码体loop()调用状态检测函数,循环运行。
(4)驱动模块控制电机。
(5)检测压力并进行数值转换。
(6)状态检测功能状态()
检测电梯状态并执行相应的操作。
当电梯到达底部时,就是一个周期的结束,更新的变量为后续周期的最终对象维护。
总结与展望在团队成员的共同努力下,基本实现了项目目标,对Arduino uno开发板、L298N等硬件模块有了深入的了解,在arduino ide的使用和代码编写方面积累了一定的实践经验。
产品的美观度和运行稳定性有待提高。使用的材料需要改进。可以尝试添加其他功能,比如蓝牙控制参考资料(25条消息)Arduino练习详情(3) L298N驾驶DC电机_ GuanFuXinCSDN博客-CSDN博客_l298n控制DC电机。
(25条消息)L298N模块使用介绍_奋斗中的菜菜博客-CSDN博客
(25条消息)使用Arduino和L298N(红板)驱动DC电机_凌顺实验室-CSDN博客_l298n
评论前必须登录!
注册