自平衡自行车(基于NI CompacRIO)

概述
“无人驾驶”这个话题已经谈了很久,大家对其的想法绝大部分还停留在汽车方面。然而在发展中国家无人驾驶汽车和现实的差距太大了——对于大多数亚洲国家,灵活方便的自平衡自行车或许是更适合的解决方案,毕竟大多数亚洲国家的自行车保有量都超过了汽车。试想一 下,用遥控器控制自行车行驶方向,或者用遥控器控制自行车跨越大部分的扰动和障碍物会是怎样一个情景呢?

今天向大家隆重介绍的设计是由清华大学DreamBots队开发的自平衡自行车,该设计在今年7月夺得第三届全国虚拟仪器大赛唯一的特等奖,并荣膺2015 NI LabVIEW全球学生设计竞赛三甲。

无人驾驶自行车有一些独特的优点:自行车的体型狭窄,更具灵活性,能够穿过一些狭小的街道;体型小意味着占地面积小,携带方便;自行车使用电力驱动,环保节能。但是,自行车的灵活性也给其带来了明显的缺点和不足,相对于汽车的四轮结构而言,自行车的两轮结构具有不稳定性,在没有人为控制的情况下自行车无法维持平衡。因此,对于无人驾驶自行车,最基本的挑战是自身的平衡控制。

一自平衡自行车硬件结构一览

自平衡自行车是在电动自行车的基础上改装而来的,经过多次的修改和调整,自行车的Solidworks模型如图1所示,实物图如图2所示。

图1自平衡自行车Solidworks三维

图2自平衡自行车实物图

二各个模块相应的功能简介

1、自行车主体

功能描述

作为自平衡自行车的基本支架,对电动自行车的动力部分进行改装,把控制车前进速度的电压信号接出,由NI CompactRIO控制器控制。

性能参数

车型号Giant Li-90,全长1.5m,车高1.08m,轮辋半径26mm,车重50kg,锂电池电压36V,容量10Ah,马达是高速无刷电机,功率180W,自行车最高时速20Km/h。

2、NI cRIO-9024及相关模块(9114插槽、9263、9870及9403板卡)

功能描述

主要采集陀螺仪数据,和NUC进行数据通讯,根据姿态信息及NUC发来的控制指令执行自平衡控制算法控制转向电机和刹车电机。

性能参数

· cRIO-9024 控制器:800 MHz,512 MB DRAM,4 GB存储。

· cRIO-9114:8槽,Virtex-5 LX110 cRIO可重新配置机箱。

· NI 9263:4通道、±10 V、16位同步模拟输出模块。

· NI 9870:4端口RS232串行接口模块。

· NI 9403:32通道、TTL数字输入/输出模块。

3、IntelD54250WYKH NUC迷你电脑

功能描述

NUC使用在Linux Ubuntu 12.04安装的ROS(Robot Operating System)系统为了采集激光雷达环境数据与Arduino遥控器和测速信息,并和cRIO控制器进行数据交换。

性能参数

酷睿i5 4250U-1.3GHz双核处理器,4GB内存,1TB硬盘:体积大小为101.6×101.6×43立方毫米。

4、maxon电机及Copley电机驱动器

功能描述

作为转向电机,控制车把转向角度,主要执行cRIO控制器的模拟信号指令。

性能参数

· maxon电机:RE 35直流有刷电机,额定电压48V,额定电流1.67A,额定转速6530rpm,减速比66:1。

· Copley电机驱动器:ACJ-055-18,峰值电流18A,持续电流6A,最大输出功率970W。

5、DYNAMIXEL EX-106+电机

功能描述

主要执行cRio控制器的模拟信号指令,拉动闸线实现不同程度的刹车。

性能参数

· EX-106+电机:数字伺服舵机,转动范围280°。

· 电压范围:12V~18.5V,最大电流3.2A。

6、陀螺仪MTi-300

功能描述

用于测量车身的三轴姿态以及加速度。

性能参数

· MTi-300:测量三轴姿态和三轴加速度。

· Roll/Pitch静态误差:0.2°。

· Roll/Pitch动态误差:0.3°。

· Yaw误差:1°。

7、激光雷达 SICK LMS111及控制电机

功能描述

激光雷达用于测量车环境里的障碍物,通过网线将结果传输给NUC处理;电机的目的是带动激光雷达到达指定位置进行扫描。

性能参数

· 激光雷达:范围(最大值/10%反射率)20m/18m,扫描角度Max:270°,可以在设置参数中调整,角度分辨率0.25°/0.5°可调,扫描频率25/50Hz,响应时间40ms/20ms,数据接口RS 232/Ethernet/CAN,工作电压10.8V~30VDC,外形尺寸(W*H*D) 102×152×105mm3,重量 1.1Kg。

· 控制电机:同3中的maxon电机。

8、激光对射器JG-10M-DS

功能描述

车轮辐条经过一次,输出将产生一个脉冲,输出的脉冲信号发送给Arduino处理。

性能参数

6.5mm激光对射光电开关,感应距离1-10m,工作电压DC 4.5-5.5V,响应时间1ms,外形尺寸:长2cm ,宽1cm,高0.9cm。

9、Arduino Mega 2560

功能描述

Arduino微控制器根据激光对射器的脉冲信号计算车的前进速度,并根据遥控器接收机的脉冲信号计算遥控器的速度和方向指令,然后通过UART接口将上述结果发送给NUC。

性能参数

· 微控制器ATmega2560,工作电压5V,输入电压7-12V。

· 数位输出入54(15 PWM出入),模拟输出入16,Flash内存256KB,SRAM 8KB,EEPROM 4KB,时钟频率16MHz。

10、遥控器 FlySky FS-T6,FS-CT6B T6接收机

功能描述

用于遥控自行车。车上的接收机接收理想速度和方向与转给Arduino。

性能参数

· 遥控器-频率范围2.4055-2.475GHz,6个通道,LCD屏幕,遥控距离范围500米,工作电压12V,机身重量590gr,尺寸191×93×302毫米。

· 接收机-调制方式:GFSK。

· 灵敏度:1024 RF。

· 接收灵敏度:-100dbm。

· 功率:4.5-6VDC。

· 重量:5克ANT。

· 尺寸:37.6×22.3×13 mm3。

三各个模块的连接图

自平衡自行车控制系统以cRIO为核心,通过NI模块化I/O设备与外部传感器和执行器相连。硬件系统连接方式框图如图3所示。

图3自平衡自行车硬件系统连接框图

四自平衡自行车控制系统简介

自行车的动力学模型是一个复杂的非线性系统,我们在平衡点位置附近进行线性化近似得到自行车的模型表达式:

其中:θ是车身的倾斜角,?是车把转向角,q_1,q_3是和自行车机械参数相关的常量,q_2,q_4是和自行车机械参数及前进速度v相关的变量。

经过简化后的模型是参数随着速度改变的二阶系统,根据线性系统理论,通过控制车把转向角可以实现对车身倾斜角的控制,从而使车身保持平衡,控制器的设计分以下两种情况讨论:

1、车速恒定

速度恒定时,控制器采用了负反馈和前馈的方法,设计如图4所示。

图4自平衡自行车控制系统框图

Bicycle Dynamic表示车自身的动力学,1/(Ts+1)起延时和低通滤波的作用,K1、K2和K3分别表示车身倾斜角反馈系数、倾斜角速度反馈系数和前馈系数,θ_d,θ ?_d分别表示车身的目标倾斜角和角速度,θ ?_d恒为零,θ_d由遥控器信号给出。

通过对车身倾斜角和角速度的负反馈,选择合适的系数K1、K2,能够实现车的前进、左转、右转等基本功能,但是对遥控器的左右转信号的响应速度慢,不够灵活。

为了增强车运动的灵活性,在车把转向角加入了前馈的作用,选择合适的系数K3,实现了前进、左转、右转之间的灵活切换。

2、车速改变

当车速改变时,由于车的系统参数随着速度发生改变,系数K1、K2和K3也和当前速度息息相关。为了实现车在变速情况下的稳定行驶,把车前进速度范围7~16km/h进行分段处理,均匀分为六段,记为档,每档对应一组系数 K1、K2和K3;此外减速过程中EX-106电机会拉闸线实现较快的减速。最终实现了加速减速之间的灵活切换。

控制器合理的设计、参数合适的选取、cRIO强大的实时计算能力以及各种细节的处理使得整个系统具有较强的稳定性,能够稳定地通过5X5cm的障碍物等。

五自平衡自行车软件模块组成

Labview编程的主界面程序labview_main.vi的前面板如图5所示,程序主要由如下6个模块组成。

· 陀螺仪模块:主要接收和处理陀螺仪信号。

· CRIO和NUC通讯模块:主要接收NUC发来的遥控器指令,并把系统参数及采集的姿态信息数据发送给NUC处理及存储。

· 刹车模块:主要是判断加减速情况,并且发送指令控制EX-106电机。

· 激光雷达自启动模块:在启动时,控制激光雷达到达指定的角度进行扫描。

· 前进电压处理模块:根据遥控器的速度快慢档位信号计算出自行车前进电机期望的电压。

· 车把转向模块:综合陀螺仪信号、前进电压及遥控器转向指令,计算车把转向角度。

以上6各个模块在程序中有文字标注,要完整地Labview程序,需要预先安装以下软件:

· LabVIEW 2011;

· LabVIEW FPGA Module 2011;

· LabVIEW Real-Time Module 2011;

· LabVIEW Robotics Module 2011;

· NI RIO 2011。

图5自平衡自行车程序主界面

六方案创新点

该自平衡自行车具有很强的灵活性和稳定性,其主要功能及创新点表现在3个方面:

1.自行车模型是一个复杂的非线性模型,对模型进行线性化处理,并采用反馈和前馈的控制方法实现了自行车的动态平衡,在遥控器的控制下能实现前进、左转、右转、加速、减速等基本运动;

2.自平衡自行车灵活性强,在遥控器的实时控制下能灵活地实现如前进、左转、右转之间的灵活变化以及运动过程中进行加速减速的灵活变化,从而能实现绕“8”字、变速绕圈、在塑胶跑道上连续跑圈运行等复杂运动;

3.自平衡自行车稳定器性强,能抵抗地面大部分的扰动和障碍物,在实际操作中能稳定越过减速带以及截面为5cmX5cm的障碍物等。

(0)

相关推荐

  • Zigbee

    一.市场需求分析 随着社会的进步,科技的发展,人们对于自己生活质量上的追求也在不断进步着,从20世纪中期人民期盼的"楼上楼下,电灯电话"到现在的"手机.空调.洗衣机&qu ...

  • 嵌入式开发中的两点编程思想

    嵌入式开发,除了掌握基本的编程语法之外,编程的思想也是很关键,下面说两点编程思想. 1分层思想 嵌入式分层思想,可能你不懂,但你肯定见到过很多类似下面这样的软件结构图. 比如,RT-Thread Na ...

  • 手把手教你做一辆mini平衡自行车!

    今天给大家带来的是一个博主老倪制作的迷你的平衡自行车项目,虽然是4年前的老项目了,不过相信我们仍然能从中学到一些新东西. ▼   演示效果 自行车平衡DIY分为3部分介绍: 第一部分介绍自行车平衡基本 ...

  • 基于制动及转向平衡过程的自动驾驶安全系统

    作者 / Aimee 出品 / 焉知 知圈 / 进"高精度地图社群",请加微信15221054164,备注地图 最近沃尔沃车辆在隧道内启动紧急转向避让的功能促使驾驶车辆安全躲避相关 ...

  • 将平衡车、自行车二合一,玩漂移更安全

    文/菱角 作为广大上班族代表,如何能避开地铁.又快又好地上班一直是一个世界性难题-- 越来越多人骑自行车,但是坐着难免腰酸背痛.屁股不舒服,而且汗流浃背,大多人不喜欢. 像很多人买的小米平衡车,站着很 ...

  • 爱因斯坦说:生活就像骑自行车,只有不断前行,才能保持平衡

    爱因斯坦说:生活就像骑自行车,只有不断前行,才能保持平衡

  • 世纪未解之谜:自行车是怎么保持平衡的?

    如果要问,迄今为止人类有过哪些 " 成熟 " 的发明. 小编第一个想到的就是 -- 自行车! " 你已经是辆成熟的自行车了,当然可以自己骑自己了!" 只要速度够 ...

  • 基于杠杆平衡的防汛挡水板设计原理分析

    图1 创客焦作 来自瑞典的挡水神器 竟然是初中的杠杆原理 图2 这些看似单薄的L型板,就是能抵御住汹涌的洪水,有图有真相,有视频为证. 视频 细细想来,这款挡水板的原理并不复杂:可以假设挡水板上方有一 ...

  • 基于分布式下垂控制的微电网分布式储能系统SOC平衡策略

    ★中国电工技术学会出品★ 致力于产业界与学术界融合创新的品牌会议 ①浏览会议通知,请戳下面标题 ☟ ☞会议通知︱2018第十二届中国电工装备创新与发展论坛暨第八届电工技术前沿问题学术论坛(第一轮) ② ...

  • 一起基于平衡桥原理的直流绝缘监察装置接地报警事故处理与分析

    ★中国电工技术学会出品★ 致力于产业界与学术界融合创新的品牌会议 ①浏览会议通知,请戳下面标题 ☟ ☞第二轮通知︱2018第十二届中国电工装备创新与发展论坛暨第八届电工技术前沿问题学术论坛 ②参会注册 ...

  • 基于GAN提高非平衡COVID-19死亡率预测模型准确性

    介绍 本文介绍了生成性对抗网络(Generative attersarial Networks,GAN)的使用,这是一种对真实的Covid-19数据进行过采样的技术,用于预测死亡率.这个故事让我们更好 ...