【RT Thread作品秀】打饭机器人 电路方案
概述餐厅打饭机器人,平时和疫情期间都可以使用。利用物联网实现自动化打饭,按预约顺序打饭,或现场打饭防止先来的需要等,后来的先打到饭这种工作人员打饭时的存在的现象发生;还可以减少因为打饭的工作人员听错打错饭的现象发生;同时还有防止占位的功能。提高客人的就餐效率,另外疫情期间还可以降低工作人员和就餐人员的感染风险。 开发环境硬件:正点原子探索者STM32F407开发板,普通机械臂,ESP8266,超声波模块US-016,蓝牙模块HC-06,直流电源模块 RT-Thread版本:RT-thread-nano3.1.3 开发工具及版本:KEIL5 RT-Thread使用情况概述使用了RT-thread-nano动态创建多任务的内核功能 RT-thread-nano的定时器功能 控制台,Finsh/msh功能 硬件框架1. 机械臂 阿里云物联网 探索者F407 ESP8266 机械臂采用正弦信号控制,使机械臂到达目标状态时,减少晃动。 2. 软件框架说明RT-thread-nano 任务3:TARG_dect 任务2:arm_all_work Alot_task 任务1:Alot_task 机械臂打饭 ESP8266连接阿里云 超声波检测餐具 软件模块说明SP8266使用串口2,通过MQTT协议和阿里云物联网进行通信,最终实现手机端实现打饭,单独占一个任务。 机械臂控制任务(arm_all_work)不采用PID,而是采用模拟正弦曲线控制PWM随时间的输出,实现机械臂由当前状态到目标状态速度先加速后减速,这样可以减小机械臂到达目标状态时的晃动;其次6个机械臂并行运行,互不干扰。 通过超声波模块在任务(TARG_dect)中检测餐具是否存在同时和物联网平台确认点餐状态,当餐具长时间不取走时机械臂会将其放置在一边。当点餐后超声波模块检测到未放置餐具时会有蜂鸣器提醒,和显示屏提醒。 演示效果高清图如下: 图1 正视图 图2 侧视图 图3 俯视图 演示视频: 比赛感悟作为一名大三本科生,感谢本次大赛能让我感受到RT-thread-nano的简洁高效实用性,丰富了我的课余生活,提高了动手解决生活中现实问题的能力。学无止境,在万物互联,人工智能的浪潮下,我这也是第一次了解阿里云物联网平台,通过本次动手实践让我感受到生活处处有物联,生活处处有智慧,理论要和实践相结合。在结合的过程中难免遇到很多问题,论坛上有不少解答让我受益匪浅。在keil5上使用nano,遇到不少问题,官网文档给了HAL库的例子,但我习惯库函数和寄存器版的编写程序,遇到时钟初始化出错,串口收发异常,系统莫名其妙的卡死,任务莫名其妙的不执行,rt_kprintf,FINSH的使用等等的问题。但最终我发现RT-thread-nano3.1.3博采众长,有许多操作系统的优点,同时还有十分简洁,移植性强的优点非常适合嵌入式设备。
用户评论