本帖最后由 草莓干 于 2020-12-17 13:59 编辑
利用颜色的HSV识别不同颜色的垃圾和垃圾桶,机器人在不同的状态下检测是否有垃圾,捡完垃圾后,转动头部寻找垃圾桶,如果前方没有找到垃圾桶就执行转身,寻找身后的垃圾桶。找到垃圾桶后执行丢垃圾动作。
用3个颜色不同的纸团代替不同的垃圾,用蓝色纸团来代替可回收物,绿色纸团来代替厨余垃圾,用红色纸团来代替有害垃圾。
(用纸团代替不同类别垃圾) 用蓝色桶来代替可回收收集容器,用绿色桶来代替厨余垃圾收集容器,用红色桶来代替有害垃圾收集容器。
(用桶代替收集容器)
1、识别“垃圾” 1)确定颜色顺序,案例中以红、蓝、绿三个顺序依次拾取
2)机器人在站立状态下看到“垃圾”的时候,说明垃圾离机器人较远,机器人可以快走前进。
3)站立状态识别不到垃圾,进入微弯腰状态。这个状态下说明机器人离垃圾已经很近,可以用慢走的形式前进。
4)当微弯腰状态已经不能识别垃圾,进入大弯腰状态,这个状态下说明机器人离垃圾已经非常近了,可以执行捡取动作。
2、扔垃圾 在拾取垃圾后,机器人面前已经没有垃圾,机器人旋转头部检测,如果前面都没有目标色机器人进行转身,寻找身后的垃圾桶。
机器人转身就能识别到目标垃圾桶,因为垃圾桶比较高,所以只做二个级别的检测就可以了,站立检测是否有目标色,然后前进,微弯腰检测目标色。
总程序(蓝色和绿色程序与红色程序相同)
|