![](https://img-blog.csdnimg.cn/2019092322052469.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Arduino & Ros 嵌入式学习笔记
Arduino基本操作学习笔记,以及Arduino_ros_bridge串口通讯使用方法学习笔记
Techblog of HaoWANG
来源于生活,低于生活。
NDVC Lab——Nonlinear Dynamics and Vibration Control Laboratory, Hong Kong,China;
JH Lab ---- 季华实验室(广东省先进制造科学与技术实验室);
Major In Robotics: Modelling、Control Technology and Vision.
展开
-
Arduino学习笔记(17)-- Linux & Arduino 串口问题解决
1. Serial port不能识别https://blog.csdn.net/qq_24254419/article/details/62241770步骤1解决方法是:插上你的arduino到电脑的USB上,并确保虚拟机软件中识别并将该串口添加至虚拟设备中,在命令行里运行:dmesg | tail结果如下:...原创 2020-03-07 17:07:43 · 2516 阅读 · 3 评论 -
Arduino学习笔记(16)-- ROS master和Arduino node通信
自定义msg和srvros_lib库默认自带的消息类型有限,根据应用的需要,有时我们需要自定义消息。步骤如下:第一步 创建在~/catkin_ws/src目录下创建一个新包testMsgSrv,当然,在任意一个原有包基础上做也是可以的。创建msg和srvmsg/TestMsg.msg 内容如下:int32 leftint32 right12srv/testSrv.srv内...原创 2020-03-04 21:52:27 · 674 阅读 · 0 评论 -
Arduino学习笔记(15)--Arduino & ROS
1. Why Arduino and ROS?ROS(Robot Operation System)是一个开源机器人操作系统,它是一个分布式的计算架构,集成了底层硬件驱动、节点间通讯、机器人控制、仿真环境和跨平台等功能。Arduino主要应用于控制电机驱动和各类传感器(比如超声波、IMU、里程计、电机转速PID控制等),然后通过收发消息等到ros_topic和service...原创 2020-03-04 19:08:13 · 2010 阅读 · 0 评论 -
Arduino学习笔记(1)-- 如何手动添加Arduino Libraries
目录1. 下载库文件2. 导入.zip文件3. 批量解压至libraries文件夹4. 运行示例代码Modbus rtu库管理器可以很方便的添加第三方库,但其中只提供了一些常用的库资源,如果需要添加更多的库资源或者自定义的库,那就需要用户自己准备找到或编写库。大部分开发者都喜欢将他们编写的Arduino库放到开源社区上分享。Github 是全球最大git服务提供商,也是最大...原创 2020-03-04 18:17:59 · 13327 阅读 · 0 评论 -
Arduino学习笔记(14)-- Arduino使用增量编码器测速
原理参考:https://www.arduino.cn/thread-42559-1-1.htmlhttps://blog.csdn.net/qq_42795251/article/details/90057308摘要:利用Arduino、增量式光电编码器测量速度、方向、位移。材料:Arduino mega 2560 分辨率256ABZ相增量式编码器 pc编码器...原创 2019-10-11 13:59:31 · 15286 阅读 · 10 评论 -
Arduino学习笔记(13)--外部中断
Arduino语法-设置中断函数函数列表attachInterrupt() detachInterrupt() interrupts() noInterrupts()attachInterrupt()函数说明void attachInterrupt (uint8_t interruptNum, void(*)(void)userFunc, int mode)设置中断...原创 2019-10-11 11:54:22 · 1909 阅读 · 0 评论 -
Arduino学习笔记(12) -- MPU6050与卡尔曼滤波算法实践
01 简介:Why MPU6050?MPU 6050等IMU传感器用于自平衡机器人,无人机,智能手机等。IMU传感器帮助我们在三维空间中获得连接到传感器的物体的位置。这些值通常是角度,以帮助我们确定其位置。它们用于检测智能手机的方向,或者用于Fitbit等可穿戴设备,它使用IMU传感器跟踪运动。MPU6050 它是全球首例整合性 6 轴运动处理组件,俗称的六轴陀螺仪(x y z 三轴的倾斜...原创 2019-03-27 16:38:24 · 22600 阅读 · 9 评论 -
Arduino学习笔记(10) --- PID原理及实现(Arduino)
介绍本文主要依托于Brett Beauregard大神针对Arduino平台撰写的PID控制库Arduino PID Library及其对应的帮助博客Improving the Beginner’s PID。在没有Brett Beauregard帮助之前,也尝试过按照PID控制基本理论写过PID控制程序,并成功应用于工业设备中,但从未深入考虑过将其写成适合工业控制的通用库。根据Brett Be...原创 2019-03-27 17:44:44 · 21895 阅读 · 3 评论 -
Arduino学习笔记(9) ---- IIC(inter-integrated circuit)通信协议时序
1. 内部寄存器可通过400kHz 的I2C 接口或1MHz 的SPI 接口来操作。2 .I2C 接口二线接口,包括串行数据线(SDA)和串行时钟线(SCL)。连接到I2C 接口的设备可做主设备或从设备。主设备将Slave 地址传到总线上,从设备用与其匹配的地址来识别主设备。当连接到系统芯片时,MPU-60X0 总是作为从设备。SDA 和SCL 信号线通常需要接上拉电阻到VD...原创 2019-03-27 16:37:28 · 3005 阅读 · 0 评论 -
arduino学习笔记(8)-- 读取ps2摇杆值
arduino读取ps2摇杆值ps2摇杆可以任意方向操作,原理是2个可变电位器组成,任意方向分别用X和Y轴表示。使用arduino的读取摇杆模块的2个模拟输出值,需要注意的是,从模拟口uno的A0-A5读取的模拟值为0-1023,但是由于模块的电位器质量或者电器干扰问题,摇杆不动的情况下,读取的数值也是不断在一个区间跳动的,所以需要做个优化。通过对数值跳动的观察,发现她在498-497,4...原创 2019-03-13 15:05:07 · 5237 阅读 · 0 评论 -
Arduino学习笔记(7)- 多线程技术
目录Table of ContentsIntroduction使用方法示例1:SCoop-example示例2:测试程序Introduction在Arduino实际开发中我们可能遇到这样的问题: arduino需要不断的读取外部管脚所输入的传感器数值; 于此同时,要产生PWM方波来控制步进电机; 如果有上位机,则还需要完成数据的收发工作; ...原创 2019-02-23 20:41:15 · 9665 阅读 · 1 评论 -
Arduino学习笔记(6) -- 使用GPS模块
本文介绍了在Arduino板子上使用现有的GPS模块,并对采集来的GPS标准语言NMEA信息进行提取加工,得到最终的位置信息。原材料:1、Arduino开发板及附件2、1575R-A GPS模块3、杜邦线若干如图:1. 1575R-A GPS模块简介1575R-A是众多GPS天线中的一种,其工作频率为1575.42MHz,阻抗50欧姆,材质为陶瓷,尺寸和具体参数如...原创 2019-01-06 14:35:47 · 27203 阅读 · 12 评论 -
Arduino学习笔记(5)-- 步进电机转速和方向控制
本文尝试用Arduino开发版控制42步进电机,搭配通用的步进电机驱动器,实现对步进电机的转速控制和方向控制。原材料:Arduino开发板及附件 42步进电机和配套驱动器 电源 接线方式:共阴总览2、42步进电机可以看到这个是四线步进电机,内部两两短接,可以通过万用表测出,相同相的线随意接入驱动器的A+,A-和B+,B-即可。3、驱动器驱动器侧面有一排按...原创 2019-01-12 14:54:48 · 47905 阅读 · 19 评论 -
Arduino学习笔记(3)--- 串口Serial函数总结
原文转自:https://blog.csdn.net/iracer/article/details/50334041原文总结了Arduino常用串口操作函数,函数说明部分来源于Arduino 官网串口使用指南,示例与实验部分为自编。本文是对Arduino串口操作函数的较全面总结,可作为工具贴查找使用。...原创 2019-03-13 12:43:48 · 30774 阅读 · 5 评论 -
Arduino学习笔记(2)-- Arduino基本函数
Arduino提供了大量的基础函数,包括I/O控制、时间函数、中断函数、数学函数、串口通信函数等,这些基础函数使单片机系统开发不再有复杂的底层代码,使用者可以很方便的对板子上的资源进行控制。另外,Arduino还提供了许多关于这些基础函数的应用实例,这些例子程序可以在Arduino开发环境的Files-Examples中找到,从而大大降低了初学者的学习难度,缩短了单片机系统开发周期。数字I/O...原创 2019-01-19 20:01:43 · 30874 阅读 · 3 评论 -
Arduino学习笔记(0):初识Arduino
目录1. Arduino简史2. Arduino特点2.1 Arduino参数:2.2 Arduino 板的说明3. 软件支持3.1 IDE:3.2 Sketch:4. Arduino编程语言5.Arduino 数据类型6.Arduino 变量和常量什么是变量范围?局部变量全局变量1. Arduino简史Arduino是一家制作开源计...原创 2018-12-22 11:46:27 · 5588 阅读 · 0 评论