第十九届智能车电磁组三轮车的控制算法分享与元素分享

本文详细介绍了FreeRTOS的概述、在STM32CubeMX中的使用步骤,包括动态创建任务函数vxTaskCreate、静态创建任务函数xTaskCreateStatic,以及任务删除函数vTaskDelete的应用。重点讲解了如何配置FreeRTOS并创建和管理任务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:
本人为19届电磁组软件手,由于第一次打智能车,学校是智能车弱校没什么祖传代码。所有代码全部是自己手撸的,为了跟我一样的第一次打智能车的人,提供一些自己在代码上看法。全部代码已经开源,希望自己能为智能车这个大家庭贡献出自己的一份力量


提示:以下是本篇文章正文内容,下面案例可供参考

一、电磁数据的采集以及滤波

先说一下电感排布我们是7电感排布,排布原则为 横 竖 内八 横 内八 竖 横
在这里插入图片描述
如图所示,其中靠3个横电感以及两个竖电感循迹,这里说说明一下,因为用竖电感,因为19届有直角,竖直电感对直角比较敏感,所以采用竖直电感,但是对于非直角赛道,在调试的过程中内八与横电感的组合,也是比较不错的,具体才用什么方案看自己的选择。如果用内八,可以参考卓晴老师发布差比和电感循迹,里面有详细的分析。
说完电感排布,说一下电感采集的数据的处理
在小车的运行的过程中难免会有一些很大或很小的突变数据,影响到我们循迹,对此我们要把原始数据进行滤波。
我采用的是中值滤波,具体采用什么滤波要看单片机的性能,因为有一些的滤波,虽然很好,但是对单片机的性能要求很高,所以不必最好的滤波,采用最合适自己的即可

	for (i = 0; i < 10; i++) // 读取十次电感
	{
   
		ad_value[0][i] = adc_once(ADC_P00, ADC_12BIT);	
		ad_value[1][i] = adc_once(ADC_P02, ADC_12BIT);	
		ad_value[2][i] = adc_once(ADC_P03, ADC_12BIT);  
		ad_value[3][i] = adc_once(ADC_P04, ADC_12BIT); 
		ad_value[4][i] = adc_once(ADC_P10, ADC_12BIT);
		ad_value[5][i] = adc_once(ADC_P06, ADC_12BIT);
		ad_value[6][i] = adc_once(ADC_P01, ADC_12BIT);
		bug = adc_once(ADC_P05, ADC_12BIT);
	}

	/*=========================冒泡排序升序==========================*/
	for (i = 0; i < 7; i++)
	{
   
		for (j = 0; j < 10 - 1; j++)
		{
   
			for 
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值