历史上的今天
今天是:2024年10月20日(星期日)
2018年10月20日 | 用单片机玩PID控制—从理想PID控制至先进PID控制_3
2018-10-20 来源:eefocus
2.1.2软件
MCS-51单片机用Keil C51开发,优点是容易了许多,缺点是不会汇编语言了,对于我个人来说,可以把差不多忘光了的C语言捡起来一些,总体上来说,用C51开发涉及的难度相对来说比较简单(如与数据结构比较),个人感觉,C51难点是硬件开发,或者说要搞清硬件工作的时序原理。我玩的系统,主要有:DS18B20温度传感器数据读取、LCD1602液晶显示器字符显示、串行口通信和各种PID控制,为了串行口通信需要有一个定时器,由于PID控制与时基相关,所以还需要第二个定时器,PID控制的采样周期,一般来说流量系统采样周期是1-2秒,压力和液位系统采样周期是3-5秒,温度系统采样周期是15-20秒,我们定的PID采样周期定位1秒,这样可以满足化工4大参数的控制要求,而在一个采样周期中,我们把它分成n个时间片,每个时间片中执行不同的任务,因此在main函数中没有超级循环,仅仅进行一些初始化设置,此外,利用第二个定时器,我还做了时钟和万年历,试了一天大概有几秒的误差,误差可能是晶振问题,也可能是中断引起的。串口通信的工作方式:定时发送数据、中断接收数据,由于串口中断的优先级设置与第二个定时器的中断优先级别是一样的,所以有可能发生以下2中情形:1当定时器正在执行任务时,发生串口中断,此时,串口中断的执行被延时,这对控制没影响,2当串口中断正在执行任务时(接受数据),发生第二个定时器中断,而且,恰好这个时间片是PID控制计算,那么这个PID计算将被延时,这对控制也没影响,串口通信还有2种情形:接收数据丢失或发送数据对方没有接收,这2种情形都可以看成是网络控制系统中的丢包概念,它最终的影响都是控制输出保持不变,如下图1所示(红色圆圈中曲线),串口通信再有2种情形:接收数据或发送数据出错,此时造成控制输出突变,如下图1所示(绿色方框中曲线),造成原因是:在进行仿真时,另外打开一个应用程序,并进行各种操作和保存文件,那将造成接收数据出错。1602液晶显示器可以显示自定义字符,为此,需要用到一个字符取模软件,这可以省去自己去计算,我用的字符取模软件如下图2所示,我玩的程序中,自定义字符有℃左上角那个小圆点。


史海拾趣
|
本帖最后由 paulhyde 于 2014-9-15 03:46 编辑 主要用于微弱小信号放大,尤其是做传感器的微弱信号,AD620与OP07配合,AD620可做前级放大,OP07可做二级放大 … 查看全部问答> |
|
近年来,移动通信的市场需求增长迅速,当前的移动通信系统已经可以使用成熟的信号处理技术来获取更高的信息传输速率。下一代无线系统的设计难度将增大,主要体现在对多标准和可重配置性的支持。不同的通信标准在中心频率、信号带宽、信噪比和线性度 ...… 查看全部问答> |
|
请教各位大侠,我现在想集成一个8位的CAN控制器在APB总线上 CAN控制器的输入输出数据都是8位的,而APB总线的输入输出数据都是32位的。。。 那把这个控制器集成在APB总线上的时候怎么处理比较合理? 高24位补零,好像太浪费了。。。CAN的波特率比 ...… 查看全部问答> |
|
作者:Chris Cockrill 德州仪器如今,现代设计公司不仅正在努力寻找功耗更低的更小型器件,同时他们还希望为工业自动化、PC、服务器以及电信设备等应用降低成本。实现这些目标的绊脚石是:设计人员使用运行在单一电压下的处理器,其需要 ...… 查看全部问答> |
|
全新未拆封 MSP430 开发板 MSP-EXP430G2 LaunchPad 带触摸板 本帖最后由 nwcheroes 于 2014-7-21 23:48 编辑 全新未拆封 MSP430 开发板 MSP-EXP430G2 LaunchPad 带触摸板 50不包邮,淘宝交易 http://item.taobao.com/item.htm?id=40208386645 … 查看全部问答> |




