找回密码
 立即注册
楼主: 王昱顺

使用STC-FOC Lite制作的遥控小车,实践才是检验真理的唯一标准

[复制链接]
  • 打卡等级:以坛为家I
  • 打卡总天数:391
  • 最近打卡:2025-04-30 00:26:42

0

主题

336

回帖

1490

积分

金牌会员

积分
1490
发表于 2024-4-9 18:29:56 | 显示全部楼层
不错,支持一下
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:458
  • 最近打卡:2025-05-01 07:48:22
已绑定手机
已实名认证

110

主题

2219

回帖

5452

积分

版主

积分
5452
发表于 2024-4-9 19:47:44 | 显示全部楼层
38009*** 发表于 2024-4-9 14:45
低通滤波器中这三个公式,不理解,请老师指点一下
dt = (time_temp - p->last_time) * 1e-6f;
alpha = Tf / ...

程序中其实没有用低通滤波,因为会引入额外的延迟环节
第一句是将事件变化量作为一个系数,防止间隔不同的时间调用,所造成的滤波混乱。
(也就是不用放在定时器里面了,可以在主程序中随便放)
第二句是计算想要的滤波时间和实际过去时间的比值,方便后面进行滤波
最后一句是低通滤波公式,对波动的差值乘以一个系数再叠加回原来的输出上,这样较大的波动就会被缩小,而持续的低频部分则可以通过一段时间的积分逐渐逼近
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:497
  • 最近打卡:2025-04-30 20:48:13
已绑定手机

151

主题

589

回帖

1196

积分

金牌会员

积分
1196
发表于 2024-4-9 21:27:39 | 显示全部楼层
王*** 发表于 2024-4-9 19:47
程序中其实没有用低通滤波,因为会引入额外的延迟环节
第一句是将事件变化量作为一个系数,防止间隔不同 ...

感谢,我也是才开始看,还不通;
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:439
  • 最近打卡:2025-05-01 08:21:55

3

主题

125

回帖

1266

积分

金牌会员

积分
1266
发表于 2024-4-10 08:22:52 | 显示全部楼层
大神,666
You can you up!~No can no BB!~
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:497
  • 最近打卡:2025-04-30 20:48:13
已绑定手机

151

主题

589

回帖

1196

积分

金牌会员

积分
1196
发表于 2024-4-10 13:51:38 | 显示全部楼层
老师好:有个疑问点请教一下:
void Timer0_Isr(void) interrupt TMR0_VECTOR
{
        if (Mode == Speed_Mode && Run_Flag && moto.set_speed != 0 && I_Error_Cnt < I_Error_Dat)
        {
                postion_add += (float)moto.set_speed * 51.0 * (1.6384 / 6000.0);//这个公式中,51.0 * (1.6384 / 6000.0)//这几个数字是什么意思??
        }
}

点评

我也忘了,功能是把rpm转换为编码器分辨率能接受的单位,速度单位转换  发表于 2024-4-11 00:04
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:487
  • 最近打卡:2025-05-01 15:22:54
已绑定手机

27

主题

693

回帖

1950

积分

金牌会员

打工人

积分
1950
发表于 2024-4-10 17:01:38 | 显示全部楼层
做的真好!
打工人
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:497
  • 最近打卡:2025-04-30 20:48:13
已绑定手机

151

主题

589

回帖

1196

积分

金牌会员

积分
1196
发表于 2024-4-21 08:18:28 | 显示全部楼层
老师:我看了你开源的这个FOC小板以后,存在一些疑惑,请老师指点一下,
疑问点:
1、原理图上调试口使用1脚P5.3口;
程序里面配置IO时,是14脚P5.4脚开漏输出;其他都是高阻太??
2、原理图上8脚是P1.4接焊盘DAT,9脚P1.5、10脚P1.6、11脚P1.7都接焊盘CLK;程序里面:P1.7、P1.6准双向IO,其他IO都是高阻。完全对不上?
3、原理图上P3.0是19脚D-;P3.1是20脚D+;P3.2是21脚CLK;P3.3是22脚MISO;P3.4是23脚KEY;
程序里面:P3.2推挽输出;P3.0、P3.1准双向口;其他IO口都是高阻态。
这也对不上?
4、原理图上P4.0是18脚CSN;
程序里面P4口并未配置;
我觉得以上这些地方,想不明白,请老师指点一下??

原理图

原理图

程序:IO配置图

程序:IO配置图

点评

P54是无电阻驱动LED方案,开漏的同时打开上拉电阻,上拉电阻作为限流电阻。关闭的时候写0拉低电平。 好几个引脚接一块是为了后续适应PWM输入或者电压输入控制,算是一种预留。 CLK时钟是强推挽,MISO只需要接收数据  详情 回复 发表于 2024-4-21 13:45
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:458
  • 最近打卡:2025-05-01 07:48:22
已绑定手机
已实名认证

110

主题

2219

回帖

5452

积分

版主

积分
5452
发表于 2024-4-21 13:45:31 | 显示全部楼层
38009*** 发表于 2024-4-21 08:18
老师:我看了你开源的这个FOC小板以后,存在一些疑惑,请老师指点一下,
疑问点:
1、原理图上调试口使用1 ...

P54是无电阻驱动LED方案,开漏的同时打开上拉电阻,上拉电阻作为限流电阻。关闭的时候写0拉低电平。
好几个引脚接一块是为了后续适应PWM输入或者电压输入控制,算是一种预留。
CLK时钟是强推挽,MISO只需要接收数据,所以是高阻。KEY也只需要读拉低的电平,内部有开启上拉电阻。所以不需要设置其他的状态。
至于CSN其实并不是必须用用的。不配置也能读,因为SPI口只接了一个设备
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:497
  • 最近打卡:2025-04-30 20:48:13
已绑定手机

151

主题

589

回帖

1196

积分

金牌会员

积分
1196
发表于 2024-4-22 08:34:33 | 显示全部楼层
王*** 发表于 2024-4-21 13:45
P54是无电阻驱动LED方案,开漏的同时打开上拉电阻,上拉电阻作为限流电阻。关闭的时候写0拉低电平。
好几 ...

感谢老师指点,主要是原理图、PCB图是一致的,他们与程序里面配置引脚对不上,往下不知道如何对应了,如何玩了,
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:290
  • 最近打卡:2025-05-01 19:58:04

23

主题

65

回帖

1870

积分

金牌会员

积分
1870
发表于 2024-6-12 13:38:34 | 显示全部楼层
本帖最后由 深圳湾 于 2024-6-12 13:40 编辑

楼主好,能拜个师不,想通过做这种小车学习电机控制,不知道需要哪些知识及工具,我目前单片机玩了2年多,做过几样小东西,但电机控制还没有接触 过,工具目前有烙铁、风枪、万用表、工作电源、示波器、显微镜、电脑、PCB是用嘉立创绘制制作、CPU方面 只会 STC系列 的和 ESP32 的,时间的话现在待业在家倒是比较充足

点评

欢迎一起学习电机控制,知识的话我之前是通过看b站视频学会的。也推荐你去看一下。剩下就是自己买个电机做驱动板慢慢研究,有问题欢迎来这里交流  详情 回复 发表于 2024-6-12 21:26
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-1 22:17 , Processed in 0.179988 second(s), 121 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表