基于单片机高精度PID模糊算法程控电源方案设计
模糊-PID控制技术运用到程控电压源的设计中,从而使得电压源的输出电压值达到预定的要求,提高输出电压的精度和反应速度。
采用51单片机,利用adc0832和DAC0832,通过220V市电通过整流得到 12V再由12V转5V。LM358搭配DAC0832电路实现电压的输出。通过ADC采集。
最终得到电压。
1:电压的整定时间小于0.5S
2:电压的精确度再0.02以内
3:论文中涉及到第二种硬件设计方案,使用更高精度的采集。
typedef struct{float Kp;float Ki;float Kd;
}PID;PID fuzzy(int e,int ec)
{int etemp,ectemp;int eLefttemp,ecLefttemp;int eRighttemp ,ecRighttemp;int eLeftIndex,ecLeftIndex;int eRightIndex,ecRightIndex;PID fuzzy_PID;etemp = e > 3.0 ? 0.0 : (e < - 3.0 ? 0.0 : (e >= 0.0 ? (e >= 2.0 ? 2.5: (e >= 1.0 ? 1.5 : 0.5)) : (e >= -1.0 ? -0.5 : (e >= -2.0 ? -1.5 : (e >= -3.0 ? -2.5 : 0.0) ))));eLeftIndex = (int)e;eRightIndex = eLeftIndex;eLeftIndex = (int)((etemp-0.5) + 3); //[-3,3] -> [0,6]eRightIndex = (int)((etemp+0.5) + 3);eLefttemp =etemp == 0.0 ? 0.0:((etemp+0.5)-e);eRighttemp=etemp == 0.0 ? 0.0:( e-(etemp-0.5));ectemp = ec > 3.0 ? 0.0 : (ec < - 3.0 ? 0.0 : (ec >= 0.0 ? (ec >= 2.0 ? 2.5: (ec >= 1.0 ? 1.5 : 0.5)) : (ec >= -1.0 ? -0.5 : (ec >= -2.0 ? -1.5 : (ec >= -3.0 ? -2.5 : 0.0) ))));ecLeftIndex = (int)((ectemp-0.5) + 3); //[-3,3] -> [0,6]ecRightIndex = (int)((ectemp+0.5) + 3);ecLefttemp =ectemp == 0.0 ? 0.0:((ectemp+0.5)-ec);ecRighttemp=ectemp == 0.0 ? 0.0:( ec-(ectemp-0.5));/*************************************反模糊*************************************/fuzzy_PID.Kp = (eLefttemp * ecLefttemp * fuzzyRuleKp[ecLeftIndex][eLeftIndex] + eLefttemp * ecRighttemp * fuzzyRuleKp[ecRightIndex][eLeftIndex]+ eRighttemp * ecLefttemp * fuzzyRuleKp[ecLeftIndex][eRightIndex]+ eRighttemp * ecRighttemp * fuzzyRuleKp[ecRightIndex][eRightIndex]);fuzzy_PID.Ki = (eLefttemp * ecLefttemp * fuzzyRuleKi[ecLeftIndex][eLeftIndex]+ eLefttemp * ecRighttemp * fuzzyRuleKi[ecRightIndex][eLeftIndex]+ eRighttemp * ecLefttemp * fuzzyRuleKi[ecLeftIndex][eRightIndex]+ eRighttemp * ecRighttemp * fuzzyRuleKi[ecRightIndex][eRightIndex]);fuzzy_PID.Kd = (eLefttemp * ecLefttemp * fuzzyRuleKd[ecLeftIndex][eLeftIndex]+ eLefttemp * ecRighttemp * fuzzyRuleKd[ecRightIndex][eLeftIndex]+ eRighttemp * ecLefttemp * fuzzyRuleKd[ecLeftIndex][eRightIndex]+ eRighttemp * ecRighttemp * fuzzyRuleKd[ecRightIndex][eRightIndex]);
【资源下载】下载地址如下(789):https://docs.qq.com/doc/DTlRSd01BZXNpRUxl
基于单片机高精度PID模糊算法程控电源方案设计相关推荐
- 【乳腺癌诊断】基于聚类和遗传模糊算法乳腺癌(诊断)分析(Matlab代码实现)
目录 1 概述 2 运行结果编辑 3 参考文献 4 Matlab代码实现 1 概述 目前,乳腺癌是我国女性发病率最高的恶性肿瘤,如何对其病灶进行早期诊断和良恶性鉴别成为亟待解决的难点.MRI凭借其较 ...
- 基于SIMULINK的燃烧过程模糊PID控制系统仿真
基于SIMULINK的燃烧过程模糊PID控制系统仿真 1 燃烧过程控制系统 在许多的工业生产过程中,燃烧都是必需的一环.燃烧过程有燃油.燃煤.燃气等区别.虽然燃烧应用场合和燃料各异,但是燃烧过程的控制 ...
- Pid控制算法-模糊算法简介
PID控制算法的C++实现 九 模糊算法简介 在PID控制算法的C++语言实现中,文章已经对模糊PID的实质做了一个简要说明.基本概念和思路进行一下说明,相信有C++语言基础的朋友可以通过这些介绍 ...
- 基于遗传算法和粒子群算法的PID悬架控制、LQR悬架控制和滑模悬架控制
目录 1.基于遗传算法和粒子群算法的的PID悬架控制 1.1 两种悬架系统 1.1.1 将路面激励整合到悬架系统 1.1.2 不将路面激励整合到悬架系统 1.1.3 总结 1.2 PID经典控制理论 ...
- 基于单片机的录音笔电路方案设计(毕业设计资料)
103[电路方案]基于单片机的录音笔电路方案设计 摘要: 基于ISD4004的录音笔设计: ●1.采用外部加放音设备,LM386驱动喇叭,电位器调节音量,构成音乐演奏器的硬件电路; 2.内置8首歌曲, ...
- 灰狼算法 c语言 代码,基于灰狼优化的模糊C—均值聚类算法
谢亮亮+刘建生+朱凡 摘要:针对模糊C-均值聚类算法(FCM)存在易受初始聚类中心影响和容易陷入局部最优的问题,提出了一种将灰狼优化算法(GWO)和模糊C-均值相结合的新聚类算法(GWO-FCM).该 ...
- 【毕业设计_课程设计】基于mtcnn的实时高精度人脸检查算法实现
文章目录 0 前言 1 简介 2 模型理解 3 环境说明 4 代码介绍 5 下载数据 6 运行 7 效果展示 8 最后 0 前言 基于mtcnn的实时高精度人脸检查算法实现 提示:适合用于课程设计或毕 ...
- 森林火灾算法c语言,基于单片机的森林火灾报警器毕业论文.doc
基于单片机的森林火灾报警器 PAGE IV 毕 业 设 计 (论 文) 设计(论文)题目: 基于单片机的森林火灾报警器 摘要 当前森林受到各种灾害的威胁.森林火灾已经成为人为破坏之后第二大对森林破坏的 ...
- 基于单片机的倒车雷达系统设计c语言,基于单片机的倒车雷达设计.doc
基于单片机的倒车雷达设计 毕业设计(论文) 题 目: 基于单片机的倒车雷达设计 系(院): 工业与信息化学院 专业: 电气自动化技术 姓 名: 学号: 校内指导教师: 职称: 讲 师 摘 要 随着社会 ...
最新文章
- jackson 反序列化string_Java 中使用Jackson反序列化
- Hibernate5.2之原生SQL查询
- 【Java 并发编程】线程操作原子性问题 ( 问题业务场景分析 | 使用 synchronized 解决线程原子性问题 )
- taro引入f2图表_Package - taro-f2
- 信息学奥赛一本通 2033:【例4.19】阶乘之和
- TCP流式套接字的异步事件WSAAsyncSelect编程
- Eclipse之Project facet Java version 1.8 is not supported.
- linux df -h指令,Linux df 命令使用参数详解
- android 控制音乐,Android音乐控制接口RemoteController使用
- 解决Iframe嵌入帆软BI系统后,Chrome升级后跨域出现登录界面,Cookie写入不成功。解决办法
- 硬方案——三极管做电源开关时,选型一定注意饱和压降的影响
- 元子弹老师-吉他指弹左手技巧
- 京东HBase平台进化与演进
- GO+Selenium批量关注各大网站实战 1 (基础+demo)
- 电子计算机技术人才需求,电子与信息技术专业人才需求调研报告.pdf
- maya xgen基础头发
- CSS3之正方体旋转
- ip_forward与路由转发
- 【Apache Mina2.0开发之一】搭建Apache Mina框架并实现Server与Client端消息传递
- SETCLIENTID
热门文章
- 2019年职称计算机考题,2019年职称计算机考试Excel备考试题(一)
- 永磁同步电机参数自整定 包括电机极对数、电阻、电感、磁链、反电势常数
- 6713芯片手册_6713-FPGA开发板手册.pdf
- [微软新技术培训]微软新技术预览之Microsoft Office SharePoint Server 2007
- 5G核心网UPF硬件加速技术
- 【百科】萨布利亚·坦贝肯
- jtopo 告警 Alarm 换行 demo
- si4463突破最大包64字节发送
- 大数据专题(一)- 简介
- 鉴智机器人:以视觉3D理解为核心的下一代自动驾驶系统