项目简介
本项目借助Arduino和光束速度传感器实现旋转速度的测量。项目包含Arduino的C/C++代码和用于在PC接收数据的Python程序,运用卡尔曼滤波器对数据进行平滑处理,适合熟悉Arduino编程基础的用户。
项目的主要特性和功能
- 速度测量:利用中断检测编码器轮是否阻挡传感器光束,测量连续两次脉冲之间的时间并计算旋转速度。
- 数据传输:通过串行链接将旋转速度数据从Arduino发送到PC。
- 数据处理:使用卡尔曼滤波器对测量数据进行平滑处理。
- 设计资源:提供不同的编码器轮设计文件(SVG格式),还包含测试装置的图片(JPG格式)。
安装使用步骤
硬件安装
准备以下硬件: - Arduino(已在Mega 2560和Micro上测试) - 光束传感器 - 三根连接传感器和Arduino的电缆 - 适配Arduino的PC串行电缆 - 手工制作的编码器轮 - 用于安装传感器和编码器轮的基座
软件设置
- 若未安装,需先安装Arduino IDE。
- 下载本项目的源码文件。
- 将
SKalmanF
文件夹放置在Arduino IDE的sketchbook
文件夹中,以便IDE能找到相关模块。
运行项目
- 打开
encoder_test2.ino
文件,将其上传到Arduino。注意使用支持中断的引脚(如引脚2)。 - 确保PC上的Python环境已安装必要依赖。
- 关闭Arduino IDE(避免阻塞串行链接),运行
rdSerEnc1.py
程序以接收Arduino发送的数据。 - 转动编码器轮开始测量。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】