当前位置: 首页 > news >正文

百度网站安全在线检测网站建设需要注意那些点

百度网站安全在线检测,网站建设需要注意那些点,英国网站域名,建立免费空间网站前言 很荣幸参与到由“极术社区和全志在线联合组织”举办的XR806开发板试用活动。本人热衷于各种的开发板的开发#xff0c;同时更愿意将其实现到具体项目中。秉承以上原则#xff0c;发现大家的重心都放在开发中的环境构建过程#xff0c;缺少了不少实际应用场景的运用同时更愿意将其实现到具体项目中。秉承以上原则发现大家的重心都放在开发中的环境构建过程缺少了不少实际应用场景的运用虽然环境搭建确实痛苦。本文主要使用XR806的FreeRTOS到实际的机器人控制应用中并实现部署模糊控制器。环境搭建本文简要略写大家可以看社区其它优秀的文章。文章中应用到的无线控制和多维状态机两个重要的开发应用会在后面的文章中陆续更新。 使用环境 1.本人使用window10VMwareubuntu 18.04 这里不多阐述 2.按照官方文档移植XR806的FreeRTOS 项目介绍 基于XR806——FreeRTOS为项目主控部署先进模糊控制器实现对于竞技机器人的机构控制和定位控制等。 软硬件框架 控制部署 继电推理 在封装好电机驱动电流环时实现对电机的控制相当于建立了一种 继电特性的非线性控制此时使用继电整定法的Z-N临界比例度法去建立模糊域。 根据以下临界系数表整定求出模糊域。 控制器类型KPTnTvKiKdP0.5*Kμ————PD0.8*Kμ—0.12*Tμ—KP*TnPI0.45*Kμ0.85*Tμ—KP/Tn—PID0.6*Kμ0.5*Tμ0.12*TμKP/ TnKP*Tn 模糊推理 模糊推理的核心就是计算出E和EC的隶属度。同时把E和EC分为多种子集情况负最大NB负中NM负小NS零ZO正小PS正中PM正大PB等七种情况。然后计算E/EC种子集的隶属度。 清晰化 进行模糊推理后可以根据计算的隶属度建立模糊规则表实现对输出值的清晰化。对应到应用层的输出函数实现控制输出。 例图 FOC控制 仿真效果 代码实现 以下提供部分代码 自动整定 void PID_AutoTune_Task(void) {if(pid.AutoRegurating_Status ! START) return;/*定义临界Tc*/float Tc 0.0;static int start_cnt; //记录最大值出现的时间static int end_cnt; //记录周期结束时的时间值 static uint16_t cool_cnt 0; static uint16_t heat_cnt 0;// pid.Autotune_Cnt ; //计数if((pid.Pv_position UP) (pid.Pv pid.Sv)) {cool_cnt ;if(cool_cnt 3) //连续三次都越过则说明真的越过了{pid.Pv_position DOWN; //标记当前在下方了pid.Zero_Across_Cnt ; //标记穿越一次cool_cnt 0;}}else if((pid.Pv_position DOWN)(pid.Pv pid.Sv))//刚才在下方现在在上方{heat_cnt;if(heat_cnt 3) //连续三次都越过则说明真的越过了{pid.Pv_position UP; //标记当前在下方了pid.Zero_Across_Cnt ; //标记穿越一次heat_cnt 0;} }/*****************开始计算强行振荡的周期****************************/ if((pid.Zero_Across_Cnt 2)(start_cnt 0)){start_cnt pid.Autotune_Cnt;printf(start_time %d\r\n, start_cnt);}else if((pid.Zero_Across_Cnt 4)(end_cnt 0)){end_cnt pid.Autotune_Cnt;printf(start_time %d\r\n, end_cnt);}if(pid.Zero_Across_Cnt 4){ /*计算一个震荡周期的时间*/if(start_cnt end_cnt)Tc (start_cnt-end_cnt)/2; elseTc (end_cnt-start_cnt)/2; /*计算Kp,Ti和Td*/pid.Kp 0.6*pid.Kp;pid.Ti Tc*0.5; pid.Td Tc*0.12; /*PID参数整定完成将各项数据清0*/heat_cnt 0;cool_cnt 0; pid.Autotune_Cnt 0;start_cnt 0;end_cnt 0; pid.SEk 0;pid.Zero_Across_Cnt 0; pid.AutoRegurating_EN OFF;pid.AutoRegurating_Status OVER; //开始运行使用新的参数后的PID算法pid.Sv pid.BKSv; } } 模糊控制 /*模糊规则表*/ int KpRule[7][7] { /*NB, NM, NS, ZO, PS, PM, PB -EC*/{1, 1, 1, 1, 1, 1, 1}, //NB 0~-10{0, 0, 0, 1, 2, 3, 4}, //NM 0~10{0, 0, 0, 1, 2, 3, 4}, //NS 10~20 {0, 0, 1, 1, 2, 3, 4}, //20~30{1, 1, 1, 1, 2, 3, 4}, //30~40{1, 1, 1, 1, 2, 3, 4}, //40 ~50{6, 6, 6, 6, 6, 6, 6}, //50~60 }; static float fuzzy_kp(float err, float errchange) { volatile float Kp_calcu; volatile uint8_t num,pe,pec; volatile float eFuzzy[2]{0.0,0.0}; //隶属于误差E的隶属程度 volatile float ecFuzzy[2]{0.0,0.0}; //隶属于误差变化率EC的隶属程度 float KpFuzzy[7]{0.0,0.0,0.0,0.0,0.0,0.0,0.0}; //隶属于Kp的隶属程度 /*****误差E隶属函数描述*****/ if(erreRule[0]) { eFuzzy[0] 1.0; pe 0; } else if(eRule[0]err erreRule[1]) { eFuzzy[0] (eRule[1]-err)/(eRule[1]-eRule[0]); pe 0; } else if(eRule[1]err erreRule[2]) { eFuzzy[0] (eRule[2] -err)/(eRule[2]-eRule[1]); pe 1; } else if(eRule[2]err erreRule[3]) { eFuzzy[0] (eRule[3] -err)/(eRule[3]-eRule[2]); pe 2; } else if(eRule[3]err erreRule[4]) { eFuzzy[0] (eRule[4]-err)/(eRule[4]-eRule[3]); pe 3; } else if(eRule[4]err erreRule[5]) { eFuzzy[0] (eRule[5]-err)/(eRule[5]-eRule[4]); pe 4; } else if(eRule[5]err erreRule[6]) { eFuzzy[0] (eRule[6]-err)/(eRule[6]-eRule[5]); pe 5; } else { eFuzzy[0] 0.0; pe 6; } eFuzzy[1] 1.0 - eFuzzy[0]; /*****误差变化率EC隶属函数描述*****/ if(errchangeecRule[0]) { ecFuzzy[0] 1.0; pec 0; } else if(ecRule[0]errchange errchangeecRule[1]) { ecFuzzy[0] (ecRule[1] - errchange)/(ecRule[1]-ecRule[0]); pec 0 ; } else if(ecRule[1]errchange errchangeecRule[2]) { ecFuzzy[0] (ecRule[2] - errchange)/(ecRule[2]-ecRule[1]); pec 1; } else if(ecRule[2]errchange errchangeecRule[3]) { ecFuzzy[0] (ecRule[3] - errchange)/(ecRule[3]-ecRule[2]); pec 2 ; } else if(ecRule[3]errchange errchangeecRule[4]) { ecFuzzy[0] (ecRule[4]-errchange)/(ecRule[4]-ecRule[3]); pec3; } else if(ecRule[4]errchange errchangeecRule[5]) { ecFuzzy[0] (ecRule[5]-errchange)/(ecRule[5]-ecRule[4]); pec4; } else if(ecRule[5]errchange errchangeecRule[6]) { ecFuzzy[0] (ecRule[6]-errchange)/(ecRule[6]-ecRule[5]); pec5; } else { ecFuzzy[0] 0.0; pec 5; } ecFuzzy[1] 1.0 - ecFuzzy[0]; /*********查询模糊规则表*********/ num KpRule[pe][pec]; KpFuzzy[num] (eFuzzy[0]*ecFuzzy[0]); num KpRule[pe][pec1]; KpFuzzy[num] (eFuzzy[0]*ecFuzzy[1]); num KpRule[pe1][pec]; KpFuzzy[num] (eFuzzy[1]*ecFuzzy[0]); num KpRule[pe1][pec1]; KpFuzzy[num] (eFuzzy[1]*ecFuzzy[1]); /*********加权平均法解模糊*********/ Kp_calcu KpFuzzy[0]*kpRule[0] KpFuzzy[1]*kpRule[1] \KpFuzzy[2]*kpRule[2] KpFuzzy[3]*kpRule[3] \KpFuzzy[4]*kpRule[4] KpFuzzy[5]*kpRule[5] \KpFuzzy[6]*kpRule[6]; printf( %f,%f,%d,%d,kp %f\r\n, err, errchange, pe, pec, Kp_calcu);return(Kp_calcu); } 实物展示 无刷电机控制 https://www.bilibili.com/video/BV1FN4y1C7fY/?aid874778769cid1302701130pagenull 整体定位控制 https://www.bilibili.com/video/BV1NN411t7Fy/?aid492262076cid1302702003pagenull 以上就是本文分享的全部内容了感谢各位
http://www.pierceye.com/news/588735/

相关文章:

  • 携程网站建设计划管理与进度控制志鸿优化设计电子版
  • 网站一级域名和二级域名wordpress 插件 页面
  • 怎么做免费网站如何让百度收录网网站建设设计
  • 河北建设工程信息网官方网站证件在线制作免费
  • 推广网官方推广网站wordpress用户角色权限
  • 电子商务网站模板html淘宝网页版登录
  • 忆达城市建设游戏网站佛山市和城乡建设局网站
  • 备案后的域名改网站名青浦建设机械网站
  • 网站地图怎么做html网络营销论文2000字
  • 武进区城乡建设局网站组建网站建设团队
  • 做淘宝链接模板网站广安网站建设兼职
  • 受欢迎的网站建设平台有用的网站地址
  • 网站建设推广岗位网站建设法规
  • ftp两个网站子域名的绑定郑州网站推广公司
  • 安庆网站设计哈尔滨工程招标信息网
  • 精湛的佛山网站设计太原网站建设培训
  • 邹城市住房和建设局网站深圳比较好的vi设计公司
  • 企业网站建设维护方案一元购物网站怎么做
  • 网站建设优化公司哪家好兰州做网站公司es5188
  • jsp网站开发工资住建网查询
  • 长沙建网站需要多少钱夹江移动网站建设
  • 淄博网站制作高端网站后台任务
  • 营销型网站源码成都网站建设seo
  • 天津网上商城网站建设专业的猎头公司
  • 西平县住房城乡建设局网站西部数码网站管理助手3.0
  • 承德市网站建设WordPress电影资源分享下载站
  • 专注于网络推广及网站建设wordpress离线发布功能
  • 营销型网站案例提高wordpress打开速度
  • 怎么样做一个网站自己个人网站后台怎么做
  • 源码站免费找客户网站