送货至:

 

 

简易旋转倒立摆及控制装置 (原理图+源代码,最终版)电

 

更新时间:2026-03-03 09:05:19

晨欣小编


这个简易旋转倒立摆由几个主要组成部分构成。首先是一个平台,它可以自由旋转并承载整个系统。然后是一个直立的悬挂杆,通过铰链连接到平台上。杆的底部是一个电机,可以提供旋转力矩。最后是一个附加在杆上的倒立摆杆,它具有一个重力质点和一个传感器来测量当前的倾斜角度。

为了控制这个系统,我们需要通过传感器获取当前的倾斜角度,然后将其输入到控制装置中。在控制装置中,我们使用PID控制算法来计算摆杆的控制力矩。PID控制算法基于当前误差、误差变化率和误差累积来计算控制信号。通过调整PID参数,我们可以实现快速响应和稳定的控制。

以下是原理图和源代码的最终版本:

原理图:
(在这里插入原理图图片)

源代码:
```
#include

const int sensorPin = A0;
const int motorPin = 9;

const float Kp = 1.2; // 比例系数
const float Ki = 1.0; // 积分系数
const float Kd = 0.8; // 微分系数

const int setPoint = 0; // 倾斜角度设定值

float error = 0;
float previousError = 0;
float integral = 0;
float derivative = 0;
float controlSignal = 0;

void setup() {
pinMode(sensorPin, INPUT);
pinMode(motorPin, OUTPUT);

Serial.begin(9600);
}

void loop() {
int sensorValue = analogRead(sensorPin);
float angle = map(sensorValue, 0, 1023, -90, 90);

error = setPoint - angle;
integral += error;
derivative = error - previousError;

controlSignal = Kp * error + Ki * integral + Kd * derivative;

if(controlSignal > 0) {
digitalWrite(motorPin, HIGH);
} else {
digitalWrite(motorPin, LOW);
}

// 输出调试信息
Serial.print("Angle: ");
Serial.print(angle);
Serial.print(" | Control Signal: ");
Serial.println(controlSignal);

previousError = error;

delay(100);
}
```

以上就是这个简易旋转倒立摆及控制装置的最终版本。通过这个装置,我们可以探索控制系统的原理,同时也能够展示电子和机械的融合。希望这个创意能够激发更多人对技术的兴趣,并鼓励他们在创造中发挥想象力。

电子元器件品牌推荐


 

上一篇: 简易信号发生器电路图大全(八款简易信号发生器电路设计原
下一篇: 简易延时电路图

热点资讯 - 技术支持

 

电阻采购的那点事!
电阻采购的那点事!
2026-03-03 | 1008 阅读
厚膜电阻的工作原理、结构特点及典型应用解析
厚膜电阻关键参数详解及工程选型实用技巧
电子元器件老化的原因有哪些?
元器件坏了,内部结构是怎么样?
10大电子元件介绍,从原理到选型,太实用了
PIC16F685-E/SO物料参数与应用
PIC16F685-E/SO物料参数与应用
2026-03-04 | 1018 阅读
电阻和电容哪一个更加耐用
电阻和电容哪一个更加耐用
2026-03-04 | 1275 阅读
收起 展开
QQ客服
我的专属客服
工作时间

周一至周六:09:00-12:00

13:30-18:30

投诉电话:0755-82566015

微信客服

扫一扫,加我微信

0 优惠券 0 购物车 BOM配单 我的询价 TOP