博舍

智能机器人制作完全手册(第2版)【全本 智能机器人制作步骤

智能机器人制作完全手册(第2版)【全本

扉页

内容提要

前言我与机器人爱好

第1章机器人来了

01从小车开始你的机器人爱好之旅

1.1小车的整体控制系统

1.2传感器部分

1.3控制器部分

1.4执行器部分

1.5后记

02制作机器人该用什么单片机

2.1入门首选AT89S51系列单片机

2.2爱好者制作机器人首选AVR系列单片机

2.3高级机器人控制器ARM

2.4音频/视频处理首选DSP

2.5新兴控制器FPGA

2.6更多可供选择的单片机

2.6.1AVR单片机过时了吗?

2.6.2MSP430系列单片机如何?

2.6.3PIC单片机如何?

2.6.4凌阳单片机如何?

03制作机器人常用的传感器

3.1用于避障的传感器

3.2用于测距的传感器

3.3用于亮度判断的传感器

3.4用于测量速度的传感器

3.5用于检测地面灰度的传感器

3.6其他

04谈谈机器人的安装

4.1制作忠告

4.2框架结构

4.3零部件

4.4固定方式

4.5车轮

4.6电机

4.7安装机器人电池

4.8电子电路

4.9布置传感器

05我的机器人制作体验

06机器人爱好者如是说

第2章SolidWorks帮你完成机器人设计

07零件的三维建模

08零件的虚拟装配

09模拟并分析你的机器人零件

第3章多足机器人

10我的第一个机器人——6足甲虫

10.1制作原理

10.2元器件的选择

10.3制作过程

10.3.1图纸设计与3D验证

10.3.2机械配件的数控加工

10.3.3整体装配

10.3.4软件调试

10.4小结

11基于AVR单片机的6足机器昆虫

11.1基本机械结构的制作

11.2控制电路的制作

11.3结构完善

11.3.1加强关节

11.3.2安装加固底盘

11.3.3加大锂电池容量

11.3.4增加指示灯

11.3.5缩短腿部长度

11.4初步行走

12进击的多足巨兽

136足坦克诞生记

13.1拼装版蜘蛛机器人

13.2加装炮台

13.3铁质6足移动平台

13.4再次加装炮台

第4章相扑机器人

14一起来认识相扑机器人

14.1机器人相扑比赛简介

14.2形形色色的相扑机器人

15相扑机器人制作指南

15.1控制器的选择

15.1.1LEGOEV3

15.1.2Arduino

15.2电机、车轮及电机驱动模块的选择

15.2.1电机

15.2.2车轮

15.2.3电机驱动模块

15.3传感器的选择

16一起来制作自主式相扑机器人

16.1相扑机器人车身的制作

16.2编程要点

第5章低成本开源互动机器人BOXZ

17“盒仔”家里造

17.1工具和材料

17.2BOXZ板块的制作

17.3盒仔的组装

17.4Arduino程序和调试

17.5盒仔的更多故事

18通过Android手机控制BOXZ

18.1BOXZ的控制原理

18.2Arduino硬件部分

18.3Arduino软件部分

18.4BOXZAndroid客户端

18.5Android开发环境搭建及BOXZ源代码介绍

18.6扩展应用

19BOXZMini制作全过程

19.1什么是BOXZMini?

19.2组装过程

19.3互动

19.4调试

19.5通信

19.6结束语

20通过网页无线遥控盒仔

20.1配置Zigbee模块

20.1.1配置路由器

20.1.2配置协调器

20.2IntelEdison网关搭建

20.2.1设备准备

20.2.2硬件组装

20.3BOXZMini搭建

20.4整体调试

20.5控制命令说明

21DIY项目从原型到量产的成长历程

2011年懵懂的ROBOT之梦

2012年兴起的Arduino之热

2013年创新的BOXZ之路

2014年腾飞的BOXZ之翼

2015年执着的BOXZ之心

结束语

第6章人形机器人

22一起来玩双足机器人吧!

22.1装配过程

22.2如何让双足机器人行走起来

22.3控制程序

22.4思路扩展——双足机器人还能做什么

23现实版铁甲钢拳来了!

23.1人形机器人的制作

23.2动作序列的制作

23.3遥控端的设计

24铁甲钢拳威力加强版

24.1程序设计

24.2制作过程

25让铁甲钢拳随你而动

25.1制作步骤

25.2Numchuck的用法

26用语音控制铁甲钢拳

第7章精彩制作实例

27用8×8LED点阵屏做的3D打印小机器人

27.1再现原设计的制作过程

27.2设计优化

28DIY自平衡机器人

28.1原理简介

28.2制作过程

29用Arduino自制无线遥控机器人

29.1总体设计

29.2Arduino下位机设计

29.2.1机械部分

29.2.2电路部分

29.2.3下位机软件设计

29.3机器人上位机设计

29.3.1遥控器设计

29.3.2上位机软件设计

29.4整体调试

29.5结束语

30开源群体机器人X-Bot

30.1功能特性

30.2规格说明

30.3硬件结构

30.4电路原理

30.5软件架构

30.6关键技术

30.6.1红外收发硬件设计

30.6.2红外多功能复用设计

30.6.3电机固定方式

30.7后记

31300元打造属于自己的水下机器人

31.1硬件构成

31.1.1ArduinoPromini及CP2102下载线

31.1.2MPU6050模块

31.1.3L298N电机驱动板模块

31.1.4LED照明模块

31.1.5摄像模块

31.1.6电源模块

31.2系统构架与设计

31.2.1硬件设计

31.2.2软件系统

31.3密封及浮态调整

32低成本打造Booby家庭服务机器人

32.1履带底盘的设计

32.2机械臂的设计

32.3机械臂测试程序

32.4视频传输功能的设计

32.5语音交流及眼睛动作的设计

32.6眼睛控制程序

32.7短信报警功能的设计

32.8总结

机器人制作开源方案

1.功能说明

   本文示例将通过程序控制模拟立体仓储系统的运动效果--模拟立体仓储系统进行运输货物时各个结构的运动方式。立体仓储系统的运动有整体系统的水平移动、载货台的纵向移动、货叉的平动,所有的运动表现形式都是旋转运动转化为平动。

2.结构说明

   该立体仓储系统的水平移动使用丝杠平移,丝杠平移可以承载较重的物体;载货台的纵向移动使用丝杠平移,其稳定性较强,位移距离长;货叉的平动使用滑块平移机构,平移距离较短。

3.电子硬件

   本实验中采用了以下硬件:

主控板Basra控制板(兼容ArduinoUno)扩展板Bigfish2.1扩展板传感器触碰传感器电池7.4v锂电池

   电路连接说明:在下图所示的2个位置分别安装一个触碰传感器作为限位(限位:限定机械设备的运动极限位置)。

   ①2个触碰传感器分别连接在Bigfish扩展板的A0、A4端口;

   ②舵机连接在Bigfish扩展板的D4端口;

   ③2个电机分别连在Bigfish扩展板的D5,D6接口和D9,D10接口。

4.功能实现4.1实现思路

   实现模拟立体仓储系统运输一个物体的功能。

   初始位置:整体立体仓库的运输机构沿-X向移动到极限位置(2号电机控制,传感器限位);载货台沿-Z向移动到极限位置(1号电机控制,传感器限位);货叉收回(3号舵机角度控制);

   装货:货叉伸出去,停顿(3号舵机角度控制,大概延迟0.3s);货叉收回,停顿(3号舵机角度控制,大概延迟0.3s);

   运输:载货台沿+X向移动到中间位置(2号电机控制,运动所需延迟时间大概7s);载物台沿+Z向移动到中间位置(1号电机控制,运动所需延迟时间大概7s);

   卸货:货叉伸出去,停顿(3号舵机角度控制,大概延迟0.3s);货叉收回,停顿(3号舵机角度控制,大概延迟0.3s);

   复位:整体立体仓库的运输机构沿-X向移动到极限位置(2号电机控制,传感器限位);载货台沿-Z向移动到极限位置(1号电机控制,传感器限位);货叉收回(3号舵机角度控制)。

4.2示例程序

    编程环境:Arduino1.8.19

下面提供一个参考例程(smartStoreHouse.ino),具体实验效果可参考演示视频。

/*------------------------------------------------------------------------------------版权说明:Copyright2023Robottime(Beijing)TechnologyCo.,Ltd.AllRightsReserved.DistributedunderMITlicense.SeefileLICENSEfordetailorcopyathttps://opensource.org/licenses/MITby机器谱2023-06-15https://www.robotway.com/------------------------------*/intsensor[4]={A0,A2,A4,A3};//定义数组~传感器接口/*宏定义舵机角度,以及延时时间*/#defineSERVO_OUT70#defineSERVO_IN120#defineDelay_right7000#defineDelay_up7000#includeServomyservo;voidsetup(){//putyoursetupcodehere,torunonce:for(inti=0;i

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

上一篇

下一篇