项目简介
本项目致力于构建一个由外部服务器控制的矿山铁路运料车电子系统,该运料车主要负责在矿山内运输混凝土。系统具备自动控制车辆灯具、自动处理装卸混凝土时的停车操作,以及在主控制服务器任务无法按时完成时进入应急模式等功能。系统分为安装在运料车上的电子控制系统和安装在控制中心自主系统上的主控制系统,二者通过标准UART经USB串行连接通信。
项目的主要特性和功能
- 多模式运行:拥有正常、制动、停车、应急四种运行模式,不同模式下对速度调整、灯具开关、传感器数据读取等任务处理方式不同,以适应不同工作场景。
- 传感器数据采集与处理:借助光线传感器、GPS、坡度传感器等多种传感器实时采集环境和车辆状态信息,并据此做出控制决策,如调整速度、开关灯具等。
- 硬件模拟控制:利用LED模拟车辆的加速器、刹车、混合器和灯具等硬件设备工作状态,通过周期性任务控制LED亮灭或亮度变化。
- 通信协议完善:主控制系统与车辆电子系统采用标准UART经USB串行连接通信,规定明确的消息格式和命令类型,保障数据传输和命令执行的准确性。
- 应急处理机制:出现响应时间故障时,系统自动切换到应急模式,采取停车、开启灯具等措施,并通知车辆电子系统进入应急状态。
安装使用步骤
硬件模块
- 按文档中的电路图在Arduino UNO上搭建电路。
- 从Arduino官网下载并安装Arduino IDE。
- 打开Arduino IDE,导入
arduino_code/arduino_code.ino
文件。 - 将Arduino微控制器连接到计算机。
- 在Arduino IDE中编译并上传代码到微控制器。
软件模块
- 安装Eclipse IDE和Quemu(适用于Ubuntu 22.4 LTS):
bash sudo apt update sudo apt install snapd default-jre sudo snap install --classic eclipse sudo apt install qemu-system
- 启动Eclipse IDE,安装必要的插件:在
Help
->Install new Software...
中,选择2019 - 12 - http://download.eclipse.org/releases/2019 - 12
,安装C/C++ Autotools support、C/C++ Development Tools、C/C++ GCC Cross Compiler Support。 - 创建新的交叉编译器C++项目:选择
File
->New
->C/C++ Project
,按以下步骤操作:- 选择
C Managed Build
,点击Next
。 - 命名项目为
test_i386
,选择Executable
->Empty Project
和Cross GCC
,点击Next
。 - 选择
Debug
和Release
,点击Next
。 - 在
Cross compiler prefix
中输入i386 - rtems5 -
,在Cross compiler path
中选择${HOME}/rtems - dev/compiler/arm/5/bin
,点击Finish
。
- 选择
- 配置项目属性:右键点击项目,选择
Properties
,在C/C++ Build
->Settings
中进行以下设置:- 在
Cross GCC Compiler
->Miscellaneous
的Other flags
末尾添加:-B${HOME}/rtems - dev/rtems - lib/i386/5/i386 - rtems5/pc386/lib - specs bsp_specs
- 在
Cross GCC Linker
->Miscellaneous
的Linker flags
中添加:-B${HOME}/rtems - dev/rtems - lib/i386/5/i386 - rtems5/pc386/lib - specs bsp_specs - qrtems - Wl, - Ttext, 0x00100000
- 点击
Apply and Close
。
- 在
- 导入项目文件:右键点击项目,选择
Import
,选择General
->File System
,浏览项目的rtems/
目录,选择所有.c
和.h
文件,点击Finish
。 - 编译项目:右键点击项目,选择
Build Project
。 - 运行程序:
- 点击
External tools
按钮,选择External Tools Configuration...
。 - 选择
Program
,点击New launch configuration
。 - 在各文本框中输入以下内容,然后点击
Run
:Name
:Qemu Debug
Location
:/usr/bin/qemu - system - i386
Working Directory
:${project_loc}/Debug
Arguments
:- kernel ${project_loc}/Debug/${project_name}
- 点击
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】