树莓派(智能垃圾桶)

1.使用多模块封装多线程来实现整体的功能,首先是树莓派的管脚图,按照你定义或者规定的管脚将模块和树莓派:
(同时需要注意的是,初始化引脚时的wiringPiSetup()函数只需在主函数调用即可,重复调用会让程序崩溃掉)
在这里插入图片描述
2. 舵机模块:
(控制它的占空比来控制它所转动的角度)
在这里插入图片描述
3.1 oled显示模块:
(这里我是把温度和oled模块结合在一起,当作一个线程来调用,使温度显示在oled显示屏上)
在这里插入图片描述
3.2 温度模块:
(读取文件中的摄氏度)
在这里插入图片描述
4.电机模块:
(通过控制高低电平让电机转动,01或10转,00和11)
在这里插入图片描述
5.超声波模块:
(为了实现避障移动,我在电机模块多封装了一个stop函数方便超声波模块调用)
在这里插入图片描述
6.网络编程和多线程:
我将它们放在了主函数main中,网络连接成功后,3个线程一起跑,同时客户端发送wsad和q可控制电机转动!

比赛需要故只开源了粗劣的第一个版本demo实现,第二版本改进使用yoloV3模型进行垃圾分类检测,机器臂分拣垃圾,垃圾分类数据集重新收集,并有微信小程序的用户查询垃圾分类及反馈机制 注意看ReadMe文件,注意看ReadMe文件,注意看ReadMe文件 B站视频介绍地址:https://www.bilibili.com/video/av80830870 交流群:1074171553 题主双非师范院校2021考研狗,如果你觉得这个小项目有帮助到你,请为项目点一个star,不管是考试型选手毕设项目被迫营业还是直接拿去二开参加比赛,这些都没问题,开源项目就是人人为我我为人人,但请尊重他人劳动成果,大家都是同龄人.心上无垢,林间有风. 材料清单 树莓派 1个 pca9685 16路舵机驱动板 1个 7寸可触摸显示屏一个 MG996R 舵机4个 垃圾桶4个 usb免驱动摄像头1个 树莓派GPIO扩展板转接线柱1个 硅胶航模导线若干 环境需求 1.开发环境 神经网络搭建—python 依赖 tensorflow,keras 训练图片来源华为云2019垃圾分类大赛提供 训练图片地址:https://developer.huaweicloud.com/hero/forum.php?mod=viewthread&tid=24106 下载图片文件后将文件解压覆盖为 garbage_classify 放入 垃圾分类-本地训练/根目录 神经网络开源模型--- resnet50 models 目录需要手动下载resnet50 的模型文件放入 resnet50模型文件名:resnet50_weights_tf_dim_ordering_tf_kernels_notop.h5 百度就可以找到下载放入即可:https://github.com/fchollet/deep-learning-models/releases/download/v0.2/resnet50_weights_tf_dim_ordering_tf_kernels_notop.h5 2.运行开发环境 进入 "垃圾分类-本地训练"目录 环境初始化 python3 安装框架flaskpip3 install flask 安装tensorflow,keras等依赖 pip3 install tensorflow==1.13.1 pip3 install keras==2.3.1 运行 1.命令python3 train.py开启训练 2.命令python3 predict_local.py开启输入图片测试 3. 训练服务模型部署 进入 "垃圾分类-服务部署"目录 output_model 目录存放的是本地训练完成导出的h5模型文件 models 目录需要手动下载resnet50 的模型文件放入 resnet50模型文件名:resnet50_weights_tf_dim_ordering_tf_kernels_notop.h5 百度就可以找到下载放入即可:https://github.com/fchollet/deep-learning-models/releases/download/v0.2/resnet50_weights_tf_dim_ordering_tf_kernels_notop.h5 环境初始化 安装框架flaskpip3 install flask 安装tensorflow,keras等依赖 pip3 install tensorflow==1.13.1 pip3 install keras==2.3.1 运行 1.命令python3 run.py开启窗口本地调试 2.命令python3 flask_sever.py开启服务部署 3.命令sh ./start.sh开启后台运行服务部署 4.树莓派界面搭建 基于nodejs electron-vue 强烈建议使用cnpm来安装nodejs库 进入 "树莓派端/garbage_desktop"目录 安装依赖 cnpm install 开发模式 cnpm run dev 打包发布 cnpm run build 5.树莓派端flask-api接口操作硬件 进入"进入 "树莓派端/garbage_app_sever"目录" 注意树莓派应该开启I2C,确保pca9685 I2C方式接入后可显示地址 命令:i2cdetect -y 1 查看 地址项 0x40是否已经接入树莓派 运行 python3 app_sever.py 或者 sh start.sh 启动 若提示缺少依赖: pip3 install adafruit-pca9685 pip3 install flask
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值