位置: IT常识 - 正文

四轮电磁------电磁循迹位置式PID(四轮电车电机价格)

编辑:rootadmin
四轮电磁------电磁循迹位置式PID 四轮电磁------电磁循迹位置式PID

推荐整理分享四轮电磁------电磁循迹位置式PID(四轮电车电机价格),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:电磁四轮技术报告,电动四轮车电机在哪里?,四轮电机,四轮电机,四轮电机,电磁四轮组,电磁四轮技术报告,电磁四轮智能车,内容如对您有帮助,希望把文章链接给更多的朋友!

四轮电磁------电磁循迹位置式PID(四轮电车电机价格)

看了很多篇博客,针对我们智能车校内赛的电磁循迹,我对循迹方案如下:

电磁前瞻+舵机+例程

我们使用的是龙邱科技的电磁前瞻:

舵机 舵机是由占空比控制旋转方向,但一定要注意❗️:例程上给定的占空比是250~1250,那么舵机中值就应该为750;但是,当舵机装上车后,舵机的中值必须要自己去测试:我测得的舵机占空比为483-603,则舵机中值应该为543。🌕所以,一定要确定属于自己的智能车的舵机中值。

以及逐飞科技的例程:

采集电磁+处理数据对电磁需要采集并处理数据;大致过程如下:定义二维数组储存电感采集的数值,最多保存四次采集的数据采集电感并保存在数组中滤波处理数据,减小误差归一化适应赛道利用差比和求出偏离中心电磁线的bias/****定义变量****/int32 GET_AD_VALUE[4][GET_AD];//采集GET_AD数据int32 GET_AD_MEAN[4];//5组平均数int32 GET_AD_MEAN_OLD[4][12];//5组过去的平均数static uint32 GET_AD_STORE[4][4];//两侧+中间两个 一共使用4个电感//差比和float OUT_rate=10.0; //对外圈电感的信任程度float IN_rate=20.0; //对内圈电感的信任程度float OTHER_rate=20.0;//对底下电感的信任float bias;//差比和输出float bias_n;//差float bias_d;//和//电感数据的处理与获取void AD_get(void){ int i=0,j=0,k=0; uint32 temp ; /*1.定义二维数组储存电感采集的数值,最多保存四次采集的数据 ADC_PIN0 | ADC_PIN1 | ADC_PIN2 | ADC_PIN3 L_AD[4][4] L_AD_Mean { 0 1 2 3 mean均值 0 |*** *** *** *** *** R2 1 |*** *** *** *** *** R1 2 |*** *** *** *** *** M0 3 |*** *** *** *** *** L1 4 |*** *** *** *** *** L2 } */ for(i = 0;i < 4;i++)//每次数据后移,以保存当此采集的数据 { GET_AD_STORE[i][3] = GET_AD_STORE[i][2]; GET_AD_STORE[i][2] = GET_AD_STORE[i][1]; GET_AD_STORE[i][1] = GET_AD_STORE[i][0]; } //2.电感采集并保存在数组中 //连续读十次取平均 for(i = 0;i < GET_AD;i++) { GET_AD_VALUE[0][i] = adc_mean_filter(ADC_0,ADC_PIN0,ADC_12BIT, GET_AD);//R2 GET_AD_VALUE[1][i] = adc_mean_filter(ADC_0,ADC_PIN1,ADC_12BIT, GET_AD);//R1 GET_AD_VALUE[2][i] = adc_mean_filter(ADC_0,ADC_PIN2,ADC_12BIT,GET_AD);//M0 GET_AD_VALUE[3][i] = adc_mean_filter(ADC_0,ADC_PIN3,ADC_12BIT, GET_AD);//L1 } //冒泡排序法排序 for(k = 0;k < 4; k++) { for(i = 0; i < GET_AD - 1; i++) { for(j = 0; j < GET_AD - 1 - i; j++) { if(GET_AD_VALUE[k][j] > GET_AD_VALUE[k][j + 1]) { temp = GET_AD_VALUE[k][j]; GET_AD_VALUE[k][j] = GET_AD_VALUE[k][j + 1]; GET_AD_VALUE[k][j + 1] = temp; } } } } //掐头去尾 取平均 for(i = 0;i < 4;i++) { for(j = 2;j < 9;j++) { GET_AD_STORE[i][1] += GET_AD_VALUE[i][j]; } GET_AD_MEAN[i] = (uint16)GET_AD_STORE[i][1]/8; } //3.对采集数据的处理 for(i = 0;i < 4;i++) { GET_AD_MEAN[i]=1000*(float)(GET_AD_MEAN[i]*1.0- AD_MIN*1.0)/(AD_MAX*1.0 - AD_MIN*1.0);//归一化适应赛道 }//GET_AD_MEAN[i]是从0开始的 应该为0 1 2 3 lcd_showstr(0,1,"rpm:");//最右边 lcd_showint32(30,1,GET_AD_MEAN[3],5); lcd_showstr(0,2,"rlm:");//右中间 lcd_showint32(30,2,GET_AD_MEAN[2],5); lcd_showstr(0,3,"llm:");//左中间 lcd_showint32(30,3,GET_AD_MEAN[1],5); lcd_showstr(0,4,"lpm:");//最左边 lcd_showint32(30,4,GET_AD_MEAN[0],5); //传统意义的差比和算法 bias_n = ((GET_AD_MEAN[0] - GET_AD_MEAN[3])*OUT_rate + (GET_AD_MEAN[1] - GET_AD_MEAN[2])*IN_rate)*1000;//差 bias_d = ((GET_AD_MEAN[0] + GET_AD_MEAN[3])*OUT_rate + absq(GET_AD_MEAN[1], GET_AD_MEAN[2])*OTHER_rate)*100;//求和 bias = bias_n * 1.0/ bias_d; lcd_showstr(0,5,"bias:"); lcd_showfloat(50,5,bias,3,2);}/******返回两个数的差的绝对值******/uint32 absq(int32 a,int32 b){ if(a >= b) return a-b; else return b-a;}舵机位置式PID/************************* * AD_cal(); *控制舵机达到指定位置483-603 * -60 ---- 60 * 将舵机中值看为0 * P输出: * P输出 =Kp * 本次误差 * D输出 =Kd (本次误差-2上次误差+上次误差) * 得到的AD_out一定要加上舵机中值占空比后在控制舵机 * **********************/void AD_cal(){ AD_pid.sum_error =bias*1.9/(OUT_rate+IN_rate); AD_out = AD_pid.K_p * AD_pid.sum_error + AD_pid.K_d * (AD_pid.sum_error-AD_pid.last_error); AD_pid.last_error = AD_pid.sum_error; printf("AD_out:%f\n",AD_out); lcd_showstr(0,6,"AD:"); lcd_showfloat(30,6,AD_out,3,2); if(AD_out > AD_limit) AD_out = AD_limit; else if(AD_out < -AD_limit) AD_out = -AD_limit; AD_out+=STEER_MIDDLE; steer_duty(AD_out);}

以上便是我最近对于电磁PID的一个学习⭐️。 在做完速度环PID和舵机PID后,我的小车已经可以简单循迹和跑起来啦😋~~ 灰常开心,嘿嘿,但是仍需不断的优化和改进方案。在后续的时间里,我会着手于元素判断,舵机PID的调参。继续努力,加油!!!

本文链接地址:https://www.jiuchutong.com/zhishi/300319.html 转载请保留说明!

上一篇:身份证号码的正则表达式及验证详解(JavaScript,Regex)(身份证号码的正确读法)

下一篇:【Pytorch】torch.nn.init.xavier_uniform_()(pytorch torch)

  • 魅族18x怎么设置应用分身(魅族18x怎么设置双击锁屏)

    魅族18x怎么设置应用分身(魅族18x怎么设置双击锁屏)

  • 电脑休眠怎么设置密码锁屏(电脑休眠怎么设置时间)

    电脑休眠怎么设置密码锁屏(电脑休眠怎么设置时间)

  • 微信电脑版怎么删群(微信电脑版怎么@别人)

    微信电脑版怎么删群(微信电脑版怎么@别人)

  • users是什么文件夹能删除吗(电脑users是什么文件)

    users是什么文件夹能删除吗(电脑users是什么文件)

  • 钉钉视频会议可以两个群一起进行吗(钉钉视频会议可以微信语音吗)

    钉钉视频会议可以两个群一起进行吗(钉钉视频会议可以微信语音吗)

  • 苹果微信如何关闭夜间模式(苹果微信如何关掉感应黑屏模式)

    苹果微信如何关闭夜间模式(苹果微信如何关掉感应黑屏模式)

  • 华为nova5i时间怎么调24小时(华为nova5pro时间)

    华为nova5i时间怎么调24小时(华为nova5pro时间)

  • 小米6x拍照模糊(小米6x拍照模糊怎么办)

    小米6x拍照模糊(小米6x拍照模糊怎么办)

  • 微信朋友圈删了还能恢复吗(微信朋友圈删了评论对方知道吗)

    微信朋友圈删了还能恢复吗(微信朋友圈删了评论对方知道吗)

  • magicibook和matebook区别

    magicibook和matebook区别

  • QQ语音通话怎么关闭自己的声音(qq语音通话怎么让对方听到自己手机的声音)

    QQ语音通话怎么关闭自己的声音(qq语音通话怎么让对方听到自己手机的声音)

  • 微信把别人删了他能看到我朋友圈吗(微信把别人删了怎么找回来)

    微信把别人删了他能看到我朋友圈吗(微信把别人删了怎么找回来)

  • vivox30可以投屏吗(vivox30投屏功能在哪里找?)

    vivox30可以投屏吗(vivox30投屏功能在哪里找?)

  • xsmax怎么用指纹解锁(苹果xs max怎么用指纹)

    xsmax怎么用指纹解锁(苹果xs max怎么用指纹)

  • 手机qq群文件怎么做(手机qq群文件怎么重命名)

    手机qq群文件怎么做(手机qq群文件怎么重命名)

  • vivo手机用户中心在哪(vivo帐户app)

    vivo手机用户中心在哪(vivo帐户app)

  • 多闪能看到来访记录吗(多闪怎么看到好友在线)

    多闪能看到来访记录吗(多闪怎么看到好友在线)

  • 荣耀10下拉通知栏失灵(荣耀10下拉通知栏不见了怎么办呢)

    荣耀10下拉通知栏失灵(荣耀10下拉通知栏不见了怎么办呢)

  • 三星s8圆圈带杠怎么办(三星s8圆圈带杠怎么设置)

    三星s8圆圈带杠怎么办(三星s8圆圈带杠怎么设置)

  • 简述数字证书的功能(简述数字证书的工作原理)

    简述数字证书的功能(简述数字证书的工作原理)

  • 苹果11怎么滚动截屏(苹果11怎么滚动截屏微信)

    苹果11怎么滚动截屏(苹果11怎么滚动截屏微信)

  • 华为手表gt2上市时间(华为watch gt2发布)

    华为手表gt2上市时间(华为watch gt2发布)

  • wps中ppt怎么录屏(wps2019ppt怎么录屏)

    wps中ppt怎么录屏(wps2019ppt怎么录屏)

  • 织梦网dede远程保存图片的问题说明(织梦程序)

    织梦网dede远程保存图片的问题说明(织梦程序)

  • 小规模纳税人工程发票几个点
  • 社保的滞纳金放什么科目
  • 网上申购到发行多长时间
  • 其他应收款报表数据怎么取
  • 软件开发里面的人天
  • 企业为员工租房账务处理
  • 其他应收款账户期初借方余额为35400
  • 银行转账结算方式的种类及适用范围
  • 当天收入支出日报表怎么做
  • 房地产形象海报
  • 货物保管不善交来的罚款账务处理?
  • 视同销售可以抵扣销项税吗?
  • 民事诉讼的适用范围具体包括哪些案件
  • 小规模企业如何变更营业范围
  • 没有缴纳契税
  • 工资薪金中的误餐补助,征收个人所得税
  • 哪些企业所得税汇算清缴
  • 户外广告经营总额
  • 电脑怎么更新系统日期
  • 附加税是按照应交增值税还是已交
  • 缴纳当月增值税30000元
  • 怎么升级鸿蒙系统3.1
  • 营业收入与营业成本之间的差额是
  • windows 11预览版
  • pos机未入账怎么回事
  • 驼鹿穿过莫兰山了吗
  • 对外投资损失是负债吗
  • 小规模报税系统登录
  • 购买支票费用计入
  • 税前扣除项目什么意思
  • react框架结构
  • 融资租赁增值税税目
  • php+vue
  • load命令怎么用
  • 汽车年审检测费收费标准
  • 固定资产的主要风险有哪些
  • 股权转让协议受让方应注意
  • 投稿网址打不开
  • python怎么用
  • 应收款和实收款区别
  • 补贴,津贴是否合理
  • 代开发票可能遇到的问题是?
  • 固定资产账务处理候文江视频
  • 个税申报哪些可以减免
  • 苗圃的账务处理
  • 以前年度多计收入今年怎么调整
  • 其他应收款审计说明怎么写
  • 对账结算流程
  • 递延所得税负债大白话解释
  • 结转本年利润的摘要怎么写
  • 非税收入包括哪几种
  • 国税局个人所得税怎么申报
  • 差旅费的会计处理
  • 增值税发票备注栏最新规定
  • 有会计从业资格证还有用吗
  • 待处理财产损益期末结转到哪里
  • 企业发生存货盘盈时计入营业外收入科目
  • fcitx输入法配置
  • win8开机logo
  • 服务器中的ocp卡全称是什么
  • win7如何新建用户
  • speedmgr.exe - speedmgr是什么进程 有什么用
  • win10预览版和正式版区别
  • Linux查看文件内容编码
  • win10系统开机自动还原
  • win8的开始和运行在哪儿
  • js怎么删除
  • MVC Ajax Helper或Jquery异步加载部分视图
  • github比较火的项目
  • div自动适应宽度
  • shell随机
  • 安卓打造世界中文全dlc
  • js鼠标点击图片就消失
  • Android网络通讯哪个最简单
  • 返利是否合法
  • 江西省税务局官网查询系统
  • 地方税务局是事业单位吗
  • 融资租赁公司购入老旧租赁资产会计处理
  • 红星新闻河南郑州
  • 传统媒介和新媒介
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设