一、AGV概述与系统架构

大家好,我是你们这门课的老朋友。今天咱们正式开篇,聊聊AGV到底是什么,以及它内部是怎么搭起来的。

说实话,我入行那会儿,AGV还是个挺小众的东西。记得2015年我参与的第一个项目,客户要求做一台能自动搬运物料的“小车”,当时市面上连像样的控制器都难找。现在呢?AGV已经遍地开花了。嗯,咱们就从最基础的定义开始。

1.1 AGV的定义

AGV,全称Automated Guided Vehicle,中文叫“自动导引运输车”。说白了,就是一辆能自己认路、自己跑、自己停的小车。它不需要司机,靠传感器和算法来导航。

你想想看,工厂里那些来回穿梭的小车,仓库里自动送货的机器人,本质上都是AGV。它们干的是同一件事:把东西从A点搬到B点,中间不需要人插手。

核心定义:AGV是一种以电池为动力,装备有自动导引装置(如激光雷达、磁条、二维码等),能够沿预定路径行驶,并完成物料搬运任务的轮式移动机器人。

1.2 AGV的分类

AGV的分类方式很多,我习惯按导航方式来分,因为导航决定了整个系统的设计思路。

分类方式 类型 典型应用 我的经验
按导航方式 磁条导航、激光导航、二维码导航、SLAM导航 磁条用于简单产线,SLAM用于复杂环境 磁条最便宜,但维护起来真头疼
按负载能力 轻型(<100kg)、中型(100-500kg)、重型(>500kg) 轻型用于电子车间,重型用于汽车制造 重型AGV的底盘设计是个大坑
按运动方式 差速驱动、舵轮驱动、全向驱动 差速最常用,全向适合狭窄空间 全向轮看着酷,但地面要求极高

我个人习惯把AGV分成“有轨”和“无轨”两大类。有轨的像磁条、二维码,路径固定;无轨的像激光SLAM,路径灵活。你想想看,如果你的产线布局经常变,那肯定选无轨的。如果只是固定路线跑,有轨的性价比更高。

1.3 应用场景

AGV的应用场景,我总结下来就三个字:搬、运、送。但具体到行业,差别还挺大。

  • 制造业:这是AGV的主战场。我记得在汽车总装车间,AGV拉着发动机在产线上跑,误差不能超过2厘米。一旦偏了,后面的装配工序全得停。
  • 仓储物流:电商仓库里的“货到人”系统,AGV把货架直接搬到拣选工位。我见过一个项目,200台AGV同时跑,调度系统写得不好就会“堵车”。
  • 医疗行业:医院里的药品配送、标本运输。这里要求AGV必须静音,而且不能撞到人。我曾经在医院调试,护士长盯着我,压力山大。
  • 特殊环境:比如冷库、无尘车间。冷库里的AGV电池续航会下降,无尘车间对灰尘控制极严。这些细节,课本上可不会告诉你。

1.4 核心系统组成

一台AGV,说白了就是三个部分:机械、电气、软件。咱们一个一个说。

1.4.1 机械系统

机械是AGV的骨架。主要包括:

  • 车体:钢架结构,承载所有部件。我见过用铝型材搭的,也见过用钢板焊接的。轻载用铝型材,重载必须焊接。
  • 驱动轮与转向机构:差速驱动最简单,两个轮子独立控制。舵轮驱动更灵活,但结构复杂。全向轮嘛,嗯,地面不平就等着抖吧。
  • 悬挂系统:这个容易被忽略。AGV过减速带时,如果悬挂不好,传感器数据会跳变。我吃过这个亏,后来每台车都加了弹簧减震。
  • 举升/牵引机构:用来搬运货物的。举升有液压和电动两种,液压力气大但容易漏油,电动干净但推力小。

1.4.2 电气系统

电气是AGV的神经和肌肉。核心部件有:

  • 主控制器:AGV的大脑。我用过PLC、工控机、嵌入式板卡(如STM32、RK3399)。PLC稳定但扩展性差,工控机功能强但功耗高。我个人习惯用嵌入式板卡+ROS,灵活且成本可控。
  • 传感器:AGV的眼睛。激光雷达、IMU、编码器、摄像头、磁传感器……每个传感器都有脾气。比如激光雷达怕灰尘,IMU有温漂,编码器会丢步。这些坑,后面章节我会一个个填。
  • 驱动电机与驱动器:AGV的腿。直流无刷电机是主流,配上FOC驱动器,控制精度很高。我建议选带CAN接口的驱动器,调试方便。
  • 电池与电源管理:AGV的能量来源。锂电池是标配,但BMS(电池管理系统)一定要做好。我见过电池过放导致鼓包的,那场面……嗯,不说了。
  • 通信模块:AGV和调度系统对话的通道。Wi-Fi最常用,但工厂里金属多,信号衰减严重。我后来改用5G或私有LoRa,稳定多了。

1.4.3 软件系统

软件是AGV的灵魂。分为三层:

  • 底层控制软件:跑在MCU上,负责电机控制、传感器采集、PID调节。这部分我用FreeRTOS或裸机,实时性要求高。
  • 中间层软件:跑在工控机上,负责导航、定位、路径规划。ROS是首选,生态好,工具链完善。我所有项目都基于ROS,省了不少事。
  • 上层调度软件:跑在服务器上,负责多车调度、任务分配、交通管理。这部分我一般用Java或Go写,配合数据库。

我的建议:如果你刚开始做AGV,先从底层控制入手,把电机转起来,把传感器读出来。别一上来就搞SLAM,那玩意儿水太深。

1.5 整体架构图

下面这张图,是我自己画的AGV系统架构。它把机械、电气、软件三层的关系理清楚了。你看一眼,心里就有谱了。

AGV系统整体架构图 机械层 (Mechanical Layer) 车体结构 驱动轮/转向机构 悬挂系统 举升/牵引机构 安全防护(急停、防撞条) 指示灯/蜂鸣器 电气层 (Electrical Layer) 主控制器(MCU/工控机) 传感器(激光雷达、IMU、编码器) 驱动电机+驱动器(FOC) 电池+BMS电源管理 通信模块(Wi-Fi/5G/CAN) IO接口(继电器、光耦) 软件层 (Software Layer) 底层控制软件 FreeRTOS/裸机 电机PID、传感器驱动 中间层软件 ROS/ROS2 导航、定位、路径规划 上层调度软件 Java/Go + 数据库 多车调度、交通管理 三层架构:机械承载 → 电气驱动 → 软件智能

注意:这张图是通用架构。实际项目中,机械层和电气层的接口设计最容易被忽视。比如电机选型时,没考虑安装空间,结果装不进去。我曾经因为这个,硬生生把底盘重新设计了一遍。嗯,血的教训。

1.6 避坑指南

最后,分享几个我踩过的坑,希望能帮你少走弯路。

  • 传感器选型别贪便宜:我曾经为了省钱,用了某国产激光雷达。结果在阳光直射下直接“瞎了”,数据全乱。后来换了进口的,贵是贵点,但稳。
  • 电池容量要留余量:理论续航8小时,实际可能只有5小时。因为AGV要频繁加减速、转弯,功耗比匀速行驶高得多。我一般按1.5倍余量来选。
  • 通信别只用Wi-Fi:工厂环境复杂,Wi-Fi干扰严重。我建议同时保留CAN总线作为备份,关键时刻能救命。
  • 机械结构要考虑维护:AGV的轮子、电机、传感器都是易损件。设计时留好检修口,不然换一个轮子要拆半个车,那画面太美我不敢看。

好了,第一章就到这里。AGV的整体架构,说白了就是“机械打底、电气驱动、软件赋能”。后面我们会一步步深入,从电机控制到传感器融合,再到ROS实战。嗯,路还长,咱们慢慢走。

本章核心要点:

  • AGV是自动导引运输车,核心是“自动”二字
  • 分类按导航方式最实用:磁条、激光、二维码、SLAM
  • 系统分三层:机械(骨架)、电气(神经肌肉)、软件(灵魂)
  • 架构图要记牢,后面所有内容都围绕它展开

公众号:蓝海资料掘金营,微信deep3321