工程机器人——光电搬运车

本文详细介绍了工程机器人的设计与实现过程,包括比赛地图、任务分析、硬件选择、软件编程等关键环节。重点讨论了使用舵机、灰度管、MPU6050传感器、颜色识别传感器等组件进行路径规划、循迹、转弯和物料识别的技术细节。

毕业设计写的就是关于工程机器人的论文和实物,现在毕业了重新从回收站找出来,哈哈哈,查重是个可怕的,最后查查6.8%,还混了个优秀论文。

一.比赛地图
这里写图片描述
二.比赛任务
这里写图片描述
三.需求分析
1.驱动用MG965 360度舵机
2.小车是通过黑线来循迹的,可以用红外传感器来循迹,但在实际场地测试后发现,红外传感器根本无法循迹(实际场地用的是厚的那种塑料纸,产生光学上的折射等,),重新选用了灰度管(输出是模拟量,循线+计数);
3.转弯用mpu6050传感器,通过z轴的值来旋转0~360度任意的角度;
4.彩色物料的识别,可以用颜色识别传感器TCS230颜色识别;
5.用3144霍尔传感器来控制转盘

四.各模块技术细节
主控板用:ARM M-4 k60
1.pwm控制舵机转动,注意占空比的精度调到最大,不然驱动不了舵机,频率最好调到100
这里写图片描述
这里写图片描述
2.循迹前根据场地的实际情况,调节灰度管的阈值,二值化
这里写图片描述
3.循迹算法采用pd即可达到循线走
在场地地图上测量小车在直线中间,偏右,偏左时的情况,并给定不同等级的偏差
这里写图片描述
采用增量式pid
这里写图片描述
通过拟合P和D的值,可以循线走
4.mpu6050通过控制z轴就可以获得左右转动的角度,为方便,把角度处理到0~360度,
转弯采用的方法: 2轮子保持绝对静止转弯保持绝对静止
注意mpu 6050 在上电的会有0度漂移,要软件处理 这里写图片描述
5.路径规划
用单独的一个灰度管来计数黑线,如果一条一条数,发生了数错将特别容易错误。才用的方法是:数中心到外面的线,和外面到中心,不同点之间的黑线数目这里写图片描述
这里写图片描述

6.颜色传感器来识别物块
这里写图片描述
7.搬运物料
用5个舵机分别控制5个竖立的钩子分,在顶端控制整个转盘的转动来控制物块 这里写图片描述
效果:
小车通过这些模块,能完成基本的需要动作,还有有些细节的东西,需要根据现场环境来调试, 比如有时候循线的时候出现了意料外的情况,这时的,得测量具体的采集数据来,来做出具体的控制,搬物块的时候,好多细节都要测量后来具体解决。

小结:
1.硬件方面:
1>首先是各种元器件的选择,实现功能的方法有很多种,需要选择处恰当的器件,比如稳压模块,5v稳压模块选择,是选择2940还是2596了?
2596的电流比较大,2940的电流小,控制舵机模块就得用2596,最好是2个2596并起来,这样2个舵机更有力。给mcu供电的是3.3v,就用2940,稳压到5v,再用1117稳压到3.3v,这样主控板就不会弄坏;
2>个轮子选择旋转电机还是360连续旋转舵机了?
选择电机控制,就相当于对轮子开环控制了,选择舵机控制就是闭环控制。在控制中能用状态量就不要用延时来达到所需状态;能用闭环就不用开环;
2.软件方面:
1>程序的书写格式规范一点,这样调试起来看的舒服一点;
2>把程序不要写死,尽量定义用含参数的函数,这样修改调试起来就方便多了;
3>如果写步骤过程的话,尽量不要一个标准位,从1用到100,这样看起来会累死人,在一个子程序里面用标志位来控制什么时候这个程序的执行。
4>多用数组这样比较高级一点的数据处理,这样后面处理起来多种使用的时候,数组的嵌套方便多了。

<think>我们被要求设计光电搬运小车的机械结构。光电搬运小车通常是指能够通过光电传感器识别路径(如循迹)并完成物品搬运的小车。机械结构设计需要考虑车体结构、驱动方式、转向机构、搬运机构以及传感器安装等。 为了提供专业的设计指南,我们需要进行网络搜索,获取相关的设计经验和建议。 搜索关键词:光电搬运小车机械结构设计、循迹小车机械设计、搬运小车结构设计、AGV小车机械设计等。 根据网络搜索结果,以下是设计光电搬运小车机械结构的关键点: 1. 车体设计: - 车体通常采用轻质且坚固的材料,如铝合金、碳纤维或高强度塑料,以减轻重量并提高强度。 - 车体结构需要紧凑,布局合理,确保重心稳定,避免运行中倾覆。重心应尽量低,并位于车体中心。 2. 驱动系统: - 常见的驱动方式有双轮差速驱动和四轮驱动。双轮差速驱动结构简单,控制方便,适用于室内平坦环境。四轮驱动则提供更好的牵引力,适合复杂地形。 - 电机选择:直流减速电机或步进电机,根据负载和速度要求选择合适扭矩和转速的电机。 - 轮子选择:根据地面情况选择轮子材质(如橡胶)和类型(如万向轮、驱动轮)。通常,两个主动轮(带电机)和一个或多个从动万向轮。 3. 转向机构: - 差速转向:通过调节左右轮的速度差实现转向,无需单独的转向机构,结构简单。 - 舵机转向:通过舵机控制转向轮,适用于需要精确转向的场合。 4. 搬运机构: - 根据搬运物品的形状和重量,设计合适的搬运机构,如机械臂、升降平台、推拉机构等。 - 机械臂:可设计多自由度机械臂,但结构复杂,控制难度大。 - 升降平台:通过丝杠、齿轮齿条或液压(小型车常用电动推杆)实现升降,用于抬升物品。 - 夹持机构:气动夹爪、电动夹爪或电磁铁等,用于抓取或吸附物品。 5. 传感器安装: - 光电传感器(如红外对管)用于循迹,通常安装在车体前部下方,离地面一定高度(约1-3厘米),并排布置多个以提高检测精度。 - 避障传感器(如超声波、红外)安装在车体前方和侧面,避免碰撞。 - 位置传感器(如编码器)安装在电机上,用于测量车轮转速和行程。 6. 电源系统: - 电池选择:锂电池或镍氢电池,提供足够的电压和容量,通常12V或24V,并考虑电池重量和体积。 7. 其他考虑: - 结构强度:确保关键部位(如电机安装座、搬运机构)有足够的强度。 - 模块化设计:方便维护和更换。 - 扩展性:预留接口以便增加功能模块。 下面是一个基本的设计步骤: 确定小车的功能和性能指标:载重、速度、尺寸、运行时间等。 设计车体框架:使用CAD软件(如SolidWorks, AutoCAD)设计车体,考虑各部件安装位置。 选择驱动方式:对于大多数光电搬运小车,双轮差速驱动加一个万向轮是常见选择。 设计搬运机构:根据搬运物品设计。例如,对于箱体类物品,可采用叉车式升降机构;对于块状物品,可采用夹持机构。 传感器布局:确保传感器安装位置合理,不受其他部件干扰。 进行力学分析:对关键部件进行强度校核,确保不会因负载而变形或损坏。 制作原型:使用3D打印或激光切割制作零件,组装并进行测试。 优化设计:根据测试结果调整设计。 注意:在机械结构设计中,还需考虑电气线路的布置,避免线路缠绕或干涉。 由于无法直接调用网络搜索工具,以上内容基于一般知识。但为了更准确,建议参考具体的设计案例或论文。 最后,按照要求生成相关问题: §§相关问题§§: 1. 光电搬运小车常用的驱动电机有哪些? 2. 如何设计光电搬运小车的差速转向系统? 3. 光电搬运小车的机械臂设计有哪些要点?</think>### 光电搬运小车机械结构设计指南 #### 1. **车体框架设计** - 采用轻量化材料(如铝合金或碳纤维复合材料),确保整体重量≤2kg,尺寸控制在300mm×200mm×150mm以内。 - 底盘需预留电机、电池和传感器的模块化安装孔位,底部离地间隙≥15mm以通过障碍物。 - 重心位置需靠近几何中心,避免转向侧翻。 #### 2. **驱动与转向系统** - **差速驱动结构**: - 双后轮独立驱动,搭配高扭矩直流减速电机(额定扭矩≥0.3N·m),电机轴直接连接橡胶轮(直径60-80mm)。 - 前轮使用万向轮或球形轮,实现零转弯半径。 - **编码器集成**: - 电机轴安装增量式编码器(精度≥500脉冲/转),通过公式计算实时速度: $$ v = \frac{2\pi r \cdot N}{60 \cdot PPR} $$ $r$为轮半径,$N$为转速(RPM),$PPR$为编码器每转脉冲数。 #### 3. **搬运机构设计** - **升降模块**: - 采用丝杠滑块结构,步进电机驱动(步距角1.8°),垂直行程≥100mm。 - 推力计算:$ F = \frac{2\pi \eta T}{P} $ $T$为电机扭矩,$P$为丝杠导程,$\eta$为效率(取0.8)。 - **夹持机构**: - 平行气动夹爪(缸径10mm),夹持力≥5N,适配不同形状物体。 - 红外传感器检测夹持状态,反馈控制开合距离。 #### 4. **光电传感器布局** - **循迹模块**: - 车头安装3-5组红外反射传感器(检测距离1-5cm可调),横向间距20mm,覆盖路径宽度。 - 传感器高度距地面10-15mm,避免环境光干扰。 - **避障模块**: - 超声波传感器(HC-SR04)置于车体四角,检测角度15°,探测距离2-400cm。 #### 5. **电源与布线** - 锂电池供电(12V/2000mAh),通过降压模块输出5V/3.3V供控制板。 - 线缆使用蛇形管包裹,沿车架内槽走线,避免运动部件缠绕。 #### 6. **结构验证要点** - 静力学仿真:对关键承重部件(如升降丝杠)施加2倍负载进行应力分析,安全系数≥2。 - 运动学测试:差速转向时轮速差控制在±10%以内,确保直线行进无偏移。 > **示例代码(Arduino 电机控制)** > ```cpp > // 差速转向控制 > void setMotorSpeed(int leftSpeed, int rightSpeed) { > analogWrite(LEFT_MOTOR_PIN, constrain(leftSpeed, 0, 255)); > analogWrite(RIGHT_MOTOR_PIN, constrain(rightSpeed, 0, 255)); > } > ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值