python进行电机控制pid仿真_python实现PID算法及测试的例子

该博客介绍了一个Python实现的PID控制器类,并通过一个测试函数展示了其在模拟电机控制中的应用。代码中详细解释了PID算法的各个部分,包括比例、积分和微分项的计算,并提供了设置参数的方法。在测试部分,模拟了前九秒的零输出和后续的系统响应,通过图形化展示输出值与设定值的变化。
摘要由CSDN通过智能技术生成

PID算法实现

import time

class PID:

def __init__(self, P=0.2, I=0.0, D=0.0):

self.Kp = P

self.Ki = I

self.Kd = D

self.sample_time = 0.00

self.current_time = time.time()

self.last_time = self.current_time

self.clear()

def clear(self):

self.SetPoint = 0.0

self.PTerm = 0.0

self.ITerm = 0.0

self.DTerm = 0.0

self.last_error = 0.0

self.int_error = 0.0

self.windup_guard = 20.0

self.output = 0.0

def update(self, feedback_value):

error = self.SetPoint - feedback_value

self.current_time = time.time()

delta_time = self.current_time - self.last_time

delta_error = error - self.last_error

if (delta_time >= self.sample_time):

self.PTerm = self.Kp *

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值