Questions tagged «arduino»

4
如何使用Arduino PID库直线驱动机器人?
我想创建一个基于Arduino的机器人,该机器人具有2个轮子,每个轮子上的正交编码器,一个H桥驱动器芯片(或电机控制器)和一个脚轮。我想使用PID库来确保速度与行进距离成正比。 从概念上讲(假设电动机对PWM的响应不同),如何实现PID控制,使其以直线运动并以与剩余行进距离成比例的速度行进?
19 arduino  pid  driver  encoding 


3
四轴PID整定
我在这里继续回答这个问题:在自主模式下,四旋翼飞机不稳定性且简单起飞 ...我想问几个有关为APM 2.6模块控制的四旋翼飞机实现基本PID的问题。(我正在使用3DRobotics的框架) 我已经将整个控制系统简化为两个PID块,一个用于控制侧倾,另一个用于控制俯仰(偏航和其他所有功能,稍后再考虑)。 我正在由自由旋转的光束组成的钻机上测试此设置,其中,我绑住了四旋翼的两个臂。另外两个可以自由移动。因此,我实际上一次测试一个自由度(侧倾或俯仰)。 检查下面的图像:在这里,A,B标记安装装置的自由旋转的梁。 通过仔细调整P和D参数,我成功实现了约30秒的持续飞行。 但是,“持续”,我的意思是指一种测试,其中无人机不会倾倒到一侧。稳定的飞行仍然遥遥无期,而且飞行30秒以上也很困难。它从一开始就摇摆不定。到达20到25秒时,它开始向一侧倾斜。在30秒内,它向一侧倾斜了不可接受的距离。很快,我发现它倒挂了 至于PID代码本身,我正在从陀螺仪+加速度计数据的“互补滤波器”中计算比例误差。积分项设置为零。P项约为0.39,D项为0.0012。(我不是故意使用Arduino PID库,只是想在这里实现自己的PID之一。) 如果您想了解它的工作原理,请查看此视频。 http://www.youtube.com/watch?v=LpsNBL8ydBA&feature=youtu.be [是的,设置非常古老!我同意。:)] 请让我知道在此阶段我可以做些什么来提高稳定性。 @Ian:在我的安装程序中进行的许多测试中,我使用来自串行监视器的读数绘制了一些测试的图表。这是横摇与“ Motor1&Motor2-PWM input”(控制横摇的两个电动机)的示例读数: 至于输入/输出: 输入:滚动和俯仰值(以度为单位),由加速度计+陀螺仪的组合获得 输出:使用伺服库的motor.write()函数提供的电机的PWM值 解析度 我解决了问题。就是这样: 问题的症结在于我实现Arduino程序的方式。我正在使用write()函数更新伺服角度,该角度恰好接受参数中的整数步(或以某种方式仅响应整数输入,100和100.2产生相同的结果)。我将其更改为writeMicroseconds(),这使直升机更加稳定。 我在一台电动机上加了RPM,而另一台电动机则保持稳定。我对此进行了更改,以增加一台电机的RPM,同时减少另一台电机。这样可以使总水平推力保持不变,这在我试图使该东西保持垂直高度时可能会对我有所帮助。 我将RPM推到最大极限,这就是为什么四轴飞行器在全油门时始终失去控制的原因。RPM在感觉到倾斜时没有上升的空间。 我观察到其中一台电动机固有地比另一台电动机弱,我不知道为什么。我将偏移量硬编码到该电机的PWM输入中。 感谢所有的支持。 源代码: 如果您有兴趣,这是我的裸露PID实现的源代码:PID源代码 请随时在您的硬件中对其进行测试。欢迎对该项目做出任何贡献。

5
开始提供有关制造机器人和修补微控制器的建议[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为Robotics Stack Exchange 的主题。 6年前关闭。 我想开始制造机器人并修补微控制器。我从哪里开始,我需要什么? 我想做自己的机器人。我对编程(汇编和C语言)很满意,所以已经覆盖了该部分,但是我的电子/电路知识有点薄弱。我不知道该用什么材料开始,需要什么工具,也不知道如何将东西放在一起。 对于微控制器,我正在考虑使用Pololu Orangutan LV-168或Arduino Duemilanove,尽管由于内置LCD和按钮(我希望使用它们,尤其是用于调试和用户交互)。我在正确的轨道上吗?在我看来,I / O端口的数量很小,但实际上是这样吗?

3
伺服器可能损坏的迹象是什么?
我只是得到了一个工具包,我不确定它是否是我自己,但似乎连续伺服之一可能坏了。当我将其插入微控制器时,首先发生的是什么,当我发送命令时它发出嗡嗡声。第二个连续伺服根本没有工作 我在基于aurdino的主板上的不同端口上玩耍,但无济于事,只是嗡嗡作响。然后,我完全拆掉了嗡嗡作响的伺服器,只把第二个伺服器放了。第二个连续伺服开始向我要求的方向移动。 我将第一个插入,第二个插入。 然后我尝试用手旋转,第二个阻力很大,而第一个阻力却小得多,也许手工旋转起来容易60%。 我可以解决这个问题吗?有人遇到过这些问题吗? 在此先感谢您,你们很棒!

3
四足学习模拟器
我目前正在构建一个四脚(四足),3自由度(自由度)的机器人,在这里建议我使用模拟器在计算机上进行学习,然后将算法上传到机器人。我为机器人使用了Arduino Uno,可以使用什么软件来模拟学习过程,然后可以上载到Arduino开发板?

5
如何将Arduino相机模块视频中的视频发送到Android屏幕?
我试图将摄像头模块连接到Arduino Mega,将Mega连接到Android手机(通过蓝牙或其他),并将摄像头的实时视图发送到手机。 我在线上观看了一个视频,其中显示了用于静止图像的视频 -Arduino上的摄像头模块捕获的图像已发送到Android,几秒钟后(即通过BT发送图像的时间)便查看了输出图像。 这可用于实时视频而不是图像吗?如果是,请指导我;如果否,请提出一些解决方法。

2
将四旋翼引向目标
我正在研究四旋翼。我知道它的位置- ,在那里我想去-目标位置b,并从我计算矢量c ^ -将带我去我的目标的单位向量:一个aabbbCcc c = b - a c = normalize(c) 由于四旋翼飞机可以在没有旋转的情况下向任何方向移动,所以我试图做的是 通过机器人偏航角旋转Ccc 将其分为分量X ,ÿx,yx, y 将它们作为侧倾角和俯仰角传递给机器人。 问题在于,如果偏航角为0°±5,则此方法有效,但如果偏航角接近+90或-90,则它将失败并转向错误的方向。我的问题是我在这里缺少明显的东西吗?
9 quadcopter  uav  navigation  slam  kinect  computer-vision  algorithm  c++  ransac  mobile-robot  arduino  microcontroller  machine-learning  simulator  rcservo  arduino  software  wifi  c  software  simulator  children  multi-agent  ros  roomba  irobot-create  slam  kalman-filter  control  wiring  routing  motion  kinect  motor  electronics  power  mobile-robot  design  nxt  programming-languages  mindstorms  algorithm  not-exactly-c  nxt  programming-languages  mindstorms  not-exactly-c  raspberry-pi  operating-systems  mobile-robot  robotic-arm  sensors  kinect  nxt  programming-languages  mindstorms  sensors  circuit  motion-planning  algorithm  rrt  theory  design  electronics  accelerometer  calibration  arduino  sensors  accelerometer 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.