最近开发了一款智能电焊台,采用PID算法进行温度控制,并随手设计了一个温度采集工具,现在开源给大家,由于是公司项目并不开放智能焊台的代码与图纸,只开源PID温度采集工具和PID算法代码。 工作原理: PID的参数值通过串口发送给下位机,下位机安装此参数进行PID运行,后转换为PWM波开关mos管,从而控制手柄的温度值。手柄上的温度是通过AD采集手柄上的温度传感器实现,采样频率为10ms一次,而控制PID的运算和PWM波的输出则采用300ms的时间。至于为什么是这个值,这个是没有理由的,是通过系统特性调节出来的,而且PID的初始化值已经放大了100倍。 串口上传温度数据格式: PID代码说明:代码非常简单,程序架构采样的是我自己设计的时间片轮询,所以实现这些时间是非常简单的。PWM是通过定时器实现的,PWM波的频率为100Hz。 部分截图: PID温度采集上位机说明:本工具采用VB6.0编程,通过串口进行温度,PWM等参数的传递,最好通过画图的形式表现出来
1
可以直接在单片机上使用的PID控制算法的代码,已经在STM32测试过了,有需要自己下载吧。里面包含位置型、增量型、积分分离的代码。
2021-10-31 15:02:34 16.29MB 单片机使用 PID控制 测试代码
1
以STM32F103C8T6为控制器,L298N驱动两个直流电机,通过3个反射式红外传感器采集数据,采用两节3.2V锂电池串联作为电源的巡线小车。车上搭在了其他模块,如:超声波测距模块、显示屏模块等。 程序为C语言编写。   数据流向:    传感器->ADC->DMA->RAM->PID控制器->PWM->L298N->直流电机   红外反射传感器:有发射头和接收头,发射头发出红外光经物体表面反射进入接收头,根据不同颜色表面对光的反射率不同,达到识别路径的目的。   用于测试的路径可以采用如下方式制作:   在A0的白纸上粘贴黑色电工胶带作为巡线路径。
2019-12-21 21:26:58 610KB 巡线小车 PID STM32
1
以STM32F103C8T6为控制器,L298N驱动两个直流电机,通过3个反射式红外传感器采集数据,采用两节3.2V锂电池串联作为电源的巡线小车。车上搭在了其他模块,如:超声波测距模块、显示屏模块等。 程序为C语言编写。   数据流向:    传感器->ADC->DMA->RAM->PID控制器->PWM->L298N->直流电机   红外反射传感器:有发射头和接收头,发射头发出红外光经物体表面反射进入接收头,根据不同颜色表面对光的反射率不同,达到识别路径的目的。   用于测试的路径可以采用如下方式制作:   在A0的白纸上粘贴黑色电工胶带作为巡线路径。
2019-12-21 20:30:19 611KB 红外寻迹 巡线小车 STM32 PID
1
此部分代码是以编码器反馈来控制电机的速度和位置。利用PID来调整马达的转速和位置,尤其适合研究平衡小车的朋友参考和借鉴。
2019-12-21 18:57:27 4.48MB PID算法代码
1
完整的直流电机PID控制算法,控制程序 采用闭环控制
2012-04-17 00:00:00 34KB 直流电机 PID控制 PID算法 代码
1