智能寻迹避障清障机器人设计(第三章)

2024-01-10 01:28

本文主要是介绍智能寻迹避障清障机器人设计(第三章),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

3  硬件电路设计

3.1 硬件概述

        本课题以 Atmega328P芯片作为主控核心,可以通过红外遥控器按或手机APP,进行功能之间的切换,从而实现智能寻迹避障、测距、跟随、搬运物品;并且可以通过红外遥控器按或手机APP完成清障以及控制机器人各项运动功能,可以通过手机APP观察测量距离。

图3.1.1:系统总体框架

 

3.2 硬件电路模块设计

3.2.1电源模块设计

        Arduino板拥有USB供电法,电源圆形插孔供电法,VIN供电法以及VCC供电法,其实本质上使用哪种方法供电要实现的效果都是一样的,常用的采用VCC供电法,使用VCC供电需要稳定的5V直流电源,因此选用了UitraFlrc XY 14500的5号可充电锂电池,其每节电池容量1200mAh,电压3.7V,选用二节该电池并联电压在7V左右,可以直接使用AMS1117—5V稳压模块便可以把6.5V到12V的输入电压变成5V的稳定电压;本课题使用7805稳压器设计稳压模块,如图3.2.1.1电源稳压模块电路所示。

图3.2.1.1电源稳压模块电路

图3.2.1.1的器件名称及功能介绍:

        C1:10V/1000uF的电解电容,其作用是滤波,使能,防止大电流经过使得Arduino复位;

        7805降压芯片:输入电6V~12V,输出电压稳定的5V;

        BT1电池组:存放二个3.7V的电池;

        S1电源开关:控制整个系统的供电;

        R1限流电阻:保护电路;

        LED:电源指示灯。

3.2.2电机驱动模块设计

         市面上可选择当作智能小车的驱动电机的一般可分为二类:直流电机和进步电机,但不管使用哪一种电机都需要驱动电路。

直流电机:

        优点:相对进步电机来说,直流电机控制简单,转速快,其电机的正极连电源的正极,负极连接电源的负极便可以实现电机的正转,反之,电机实现反转。因此,该电机的驱动电路并不困难复杂。

        缺点:使用直流电机常常会出现动力不足情况,而且,直流电机速度精度调节难度相当的大,输出力矩还小,要想获得大力矩需要加减速齿轮才能实现,相对复杂。

步进电机:

        优点:步进电机主要调节PWM便可以调节电机的速度,而且精度高,转速稳定。其次,进电机直接可以输出较大的力矩。

        缺点:步进电机转速慢,驱动电路复杂,而且会占用比较多的数字I/O口,对于一些占用I/O多的实验相当不友好。

        对比发现,进步电机相对优点突出,适合做高动力的智能工程小车。选用了合适的电机先后,也要合适的电机驱动才能使用,已知市面上比较合适该电机驱动芯片有L298N直流进步电机驱动板,该模块采用H桥驱动电路,其特点是使用高电压,大电流的驱动芯片,常常建议使用电压5V到15V。一般来说,arduino板的电压无法直接驱动电机,需要经过升压之后才能用或者使用电源直接给驱动电路供电。其中所设计的电源模块的电源7V左右适合自己给电机驱动芯片供电。不过,本课题使用L293D电机驱动芯片设计了一个驱动模块,如图3.2.2.1 电机驱动电路。

图3.2.2.1 电机驱动电路

图3.2.2.1 的器件名称及功能介绍:

        L293电机驱动芯片:提供高达600 mA的双向驱动电流。

        C2:瓷片电容器,隔直流。

        C3,C4:瓷片电容器,滤波。

        DC:进步直流减速电机。

3.2.3寻迹模块设计

        寻迹模块使用的是TCRT5000红外光电传感器,该红外传感器是一种名叫红外反射式光电的开关,该传感器由白色灯为发射管发射红外光线,黑色灯为接收管接收红外光线。一般利用红外传感器对不同颜色和材料的物体的吸收程度与反射量的不同进行高低电平的判断。当发射管发射的红外光线白色的道路时,绝大部分的光线都会经过路面反射回来,而黑色管接收到返回的红外光线时,红外传感器将处于导通状态,out引脚输出低电平;相反,当发射管发射的红外光线黑色的道路时,红外光线被黑色路面所吸收,黑色管检测不到返回的光线,或者返回的光线不足,红外传感器无法导通,进而out引脚输出高电平。该模块主要由二个红外传感器装在车底左右两边来完成,可以通过红外传感器旁边的电位器调节电阻的大小,进而改变红外传感器识别的距离。主要的电路图如图3.2.3.1寻迹模块原理图。

图 3.2.3.1 寻迹模块电路

图 3.2.3.1器件名称及功能介绍:

        LM393为电压比较芯片:电压比较;

        C1,C2为瓷片电容器:滤波;

        R5,R6为限流电阻:限流;

        W1,W2为电位器:调节寻迹灵敏度;

        RP220:RF为发射端,RX为接收端;RF电信号转化为光信号,RF光信号转化为电信号。

灵敏度的计算:

    INA-:RW12VCC/(RW11+RW12)

                                                        INA+:RXVCC/(RX+R3)

        当 INA+ > INA- 时,没有障碍物,输出高电平;

        当 INA+ <= INA- 时,有障碍物,输出低电平,对应的发光二极管灯亮;INA-电压为0V或者5V,输入输出无意义,寻迹失灵。

3.2.4测距避障模块设计

        测距避障常见的方法有红外测距避障法和超声波测距避障法,本课题使用了超声波避障测距法,该方法使用一个HC-SR04 超声波传感器和一个型号为SG90的舵机组合而成。超声波的频率一般大于20KHz远远超出人耳可识别的范围。因而,正常来说人耳是听不到超声波的存在的。因此,使用该方法不会产生噪音的,可以安心正常使用。通过查阅多种资料得出:越高频率的声音,越符合光学特征以及一些常见的反射定律、折射定理。也正是因为这样智能小车在行驶过程中可以根据超声波反射定理测量出前方的距离。而测距避障模块也正是由该原理来实现的,其超声波传感器装在舵机的上面负责测量前方的距离,舵机根据所测出的前方距离达到一定值进行不同位置的测量,如左边和右边。超声波工作时序与工作原理图如图3.2.4.1所示。

图3.2.4.1 超声波工作时序与工作原理图

3.2.5跟随模块设计

        最简单的跟随设计是基于一个超声波传感器或者一个红外传感器构成,当物体进入被测量的范围之内的时候,小车则会跟随物体做前进,暂停,后退运动。但这样设计的缺陷很明显,就是不能跟随物体左右转,为了解决这个问题,常常需要采用三个传感器,一个测量前方距离,二个判断左右障碍物。至此,本课题在小车的前方选用了一个超声波传感器,并为了小车能智能走曲线,本课题还在小车添加了二个红外传感器,分别装在智能小车超声波传感器的左右二边,这样便能辅助小车进行左右转运动,当只进入了左边,左边的红外传感器接收到返回的红外光线,输出低电平,小车往左边转动。反之,右转。而当二边的红外传感器同时返回的是低电平,则说明小车进入了前进,停止,后退的范围。跟随模块设计如图3.2.5.1所示。

图3.2.5.1 跟随模块设计

3.2.6机械臂模块设计

 机械臂模块主要由舵机以及四个舵机及其亚克力机械臂构架组成,亚克力构架如图3.2.6.1所示。

             

图3.2.6.1 亚克力构架

        先把舵机固定于底板上,再装上左右二边摇臂,在装上机械手,值得注意的是装摇臂的时候需要把螺丝拧到合适位置,不然会出现卡机现象;还有便是需要了解如何通过PWM信号进行舵机的控制。一般来说,使用舵机所需要的舵机转动角度为0度到180度,因此可以根据舵机的250份划分原理,把舵机0度到180度分为250份,每份为0.74度。

        控制舵机0度时所对应的PWM为0.5ms,而控制舵机180度时对应的PWM为2.5ms,以此得出控制舵机从0度到180所用到的PWM宽度为2ms;

2ms÷250=8us;

        经过计算得出:舵机的PWM信号 = 1度/8us;也就是说需要精确的控制舵机的角度就要使用合适的PWM,根据1度要8us,可以得出:

所需要的度数×8us=需要调节的PWM宽度;

        装舵机时常常要熟知舵机的转动角度,一般来说把舵机逆时针扭到尽头便是0度;反之,顺时针扭的尽头便是180度,不过舵机由于本身设计缺陷可能会存在一定误差,因而需要软件调节舵机复位,该方法可下面5.1自由运动模块设计说明。

3.3 硬件电路模块总线路连接设计

        电源流出的直流电一部分直接给电机驱动模块供电,大概7V左右,一部分经过稳压模块稳压后,流出稳定的5V直流电直接流入Arduino控制板的VCC引脚给Arduino供电以及给其他的模块供电,如寻迹模块,避障测距模块等;这些模块的out引脚都要接在Arduino对应的输入输出引脚上,进而可以这些模块整合起来,在Altium  Designer画出其原理图,并且根据其原理图画出了PCB图,最后根据该PCB图定制了Arduino拓展板,以及小车底板,从而完成Arduino智能小车的硬件设计。

3.4本章小结

        本章主要是对电源模块的稳压进行了相关描述;对驱动模块需要驱动的电压进行了分析;对寻迹、测距避障、跟随模块的信息采集原理及其如何实现进行了说明;对机械臂的构成及舵机工作原理解释;最终确定了本课题的原理图以及PCB图,并通过这些图把小车从理论到实物做了出来。

这篇关于智能寻迹避障清障机器人设计(第三章)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/589088

相关文章

MyBatis设计SQL返回布尔值(Boolean)的常见方法

《MyBatis设计SQL返回布尔值(Boolean)的常见方法》这篇文章主要为大家详细介绍了MyBatis设计SQL返回布尔值(Boolean)的几种常见方法,文中的示例代码讲解详细,感兴趣的小伙伴... 目录方案一:使用COUNT查询存在性(推荐)方案二:条件表达式直接返回布尔方案三:存在性检查(EXI

基于Python实现智能天气提醒助手

《基于Python实现智能天气提醒助手》这篇文章主要来和大家分享一个实用的Python天气提醒助手开发方案,这个工具可以方便地集成到青龙面板或其他调度框架中使用,有需要的小伙伴可以参考一下... 目录项目概述核心功能技术实现1. 天气API集成2. AI建议生成3. 消息推送环境配置使用方法完整代码项目特点

JavaScript实战:智能密码生成器开发指南

本文通过JavaScript实战开发智能密码生成器,详解如何运用crypto.getRandomValues实现加密级随机密码生成,包含多字符组合、安全强度可视化、易混淆字符排除等企业级功能。学习密码强度检测算法与信息熵计算原理,获取可直接嵌入项目的完整代码,提升Web应用的安全开发能力 目录

利用Python实现Excel文件智能合并工具

《利用Python实现Excel文件智能合并工具》有时候,我们需要将多个Excel文件按照特定顺序合并成一个文件,这样可以更方便地进行后续的数据处理和分析,下面我们看看如何使用Python实现Exce... 目录运行结果为什么需要这个工具技术实现工具的核心功能代码解析使用示例工具优化与扩展有时候,我们需要将

基于Python打造一个智能单词管理神器

《基于Python打造一个智能单词管理神器》这篇文章主要为大家详细介绍了如何使用Python打造一个智能单词管理神器,从查询到导出的一站式解决,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 项目概述:为什么需要这个工具2. 环境搭建与快速入门2.1 环境要求2.2 首次运行配置3. 核心功能使用指

Python实现word文档内容智能提取以及合成

《Python实现word文档内容智能提取以及合成》这篇文章主要为大家详细介绍了如何使用Python实现从10个左右的docx文档中抽取内容,再调整语言风格后生成新的文档,感兴趣的小伙伴可以了解一下... 目录核心思路技术路径实现步骤阶段一:准备工作阶段二:内容提取 (python 脚本)阶段三:语言风格调

使用Python实现表格字段智能去重

《使用Python实现表格字段智能去重》在数据分析和处理过程中,数据清洗是一个至关重要的步骤,其中字段去重是一个常见且关键的任务,下面我们看看如何使用Python进行表格字段智能去重吧... 目录一、引言二、数据重复问题的常见场景与影响三、python在数据清洗中的优势四、基于Python的表格字段智能去重

Spring AI集成DeepSeek三步搞定Java智能应用的详细过程

《SpringAI集成DeepSeek三步搞定Java智能应用的详细过程》本文介绍了如何使用SpringAI集成DeepSeek,一个国内顶尖的多模态大模型,SpringAI提供了一套统一的接口,简... 目录DeepSeek 介绍Spring AI 是什么?Spring AI 的主要功能包括1、环境准备2

Spring AI与DeepSeek实战一之快速打造智能对话应用

《SpringAI与DeepSeek实战一之快速打造智能对话应用》本文详细介绍了如何通过SpringAI框架集成DeepSeek大模型,实现普通对话和流式对话功能,步骤包括申请API-KEY、项目搭... 目录一、概述二、申请DeepSeek的API-KEY三、项目搭建3.1. 开发环境要求3.2. mav

Python3脚本实现Excel与TXT的智能转换

《Python3脚本实现Excel与TXT的智能转换》在数据处理的日常工作中,我们经常需要将Excel中的结构化数据转换为其他格式,本文将使用Python3实现Excel与TXT的智能转换,需要的可以... 目录场景应用:为什么需要这种转换技术解析:代码实现详解核心代码展示改进点说明实战演练:从Excel到