导读: 本文详细论述了采用MC56F8323 DSP为核心的直流无刷电机控制器的硬件设计,给出了电流环、速度位置环和IPM驱动电路的实际应用电路。此硬件设计已成功应用在国内某高档电脑平缝机上,性能优异,部分指标达到行业领先水平。   随着电力电子技术,新的永磁材料以及具有快速运算能力的DSP(数字信号处理器)的发展,直流无刷电机应用日益普及。直流无刷电机具有和直流电机相似的优良调速性能,又克服了直流电机采用机械式换向装置所引起的换向火花、可靠性低等缺点,且具有体积小、重量轻、效率高、电机的形状和尺寸灵活等优点,因此广泛应用在伺服系统、数控机床、电动车辆和家用电器各领域,成为现代伺服技术的主方
1
1 概述  在诸多的总线标准中,各种总线都称是标准的,但在市场竞争不能划地为界的行业或领域,各种总线都互相渗透。例如DeviceNet广泛应用于汽车、物料搬运和制造加工业,但在欧洲,Profibus标准也是这些领域的有力竞争者且占据了的份额。此外,Profibus标准在一些特定行业的应用也非常广泛,像Profibus DP在汽车工厂中的应用就是如此。然而,有一个很有趣的现象是,德国的CANopen总线本身也用在汽车行业。但是,不管怎么看,整个市场基本上可以划分为过程工业和制造工业两类。  随着工业企业为实现更快捷、高效的生产和运行而不断地投资,挂在这些不同总线上的智能化装置正在迅速增加。总线的
1
步进电机控制器的FPGA实现
2022-12-08 23:39:48 203KB 步进电机控制器 fpga 实现
1
针对在设备中需要控制多个步进电机的需求,设计了基于RS-485网络的步进电机控制系统。使用STM32单片机实现了Modbus RTU协议,有效解决了单个处理器不能同时控制大量步进电机的问题和多步进电机驱动系统中零点位置、极限位置信号处理的实时性的问题。该方法在多个项目中得到了应用,既能满足实时性要求,又具有很好的扩展性能。步进电机的驱动使用了集成驱动芯片,详细分析了该芯片的使用中的关键技术。
2022-12-02 11:13:31 863KB 步进电机 Modbus RTU RS-485
1
驱动电机及控制系统检修
2022-11-24 18:20:35 5.08MB 驱动电机 控制系统 系统检修
驱动电机及控制系统检修
2022-11-24 14:20:44 4.47MB 驱动电机 控制系统 系统检修
车用电机控制器的开发及其关键技术,讲述电机控制器的特点及研发设计
2022-11-19 21:31:44 1.92MB 电机控制器 关键技术
1
4.2 FreeRTOS的编码标准和命名风格 作为初学者,非常有必要了解 FreeRTOS的编码标准和命名风格,这对于以后的学习大有裨益。 4.2.1 FreeRTOS的编码标准 FreeRTOS核心源码文件的编写遵循 MISRA代码规则,同时支持各种编译器。但考虑到有些编译器的性能还比较 弱,不支持 C语言的新标准 C99和 C11 的一些特性和语法,所以 FreeRTOS的源码中就没有引入 C99和 C11的新特 性,但是有一个例外,源码中有用到头文件 stdint.h(这个文件是 C99标准才引入的)。如果用户使用的编译器没 有这个头文件的话,可以将 FreeRTOS 源码文件中,此路径下 FreeRTOS/Source/include的一个 stdint.readme文 件修改为 stdint.h文件后用于这个编译器。  MISRA MISRA (The Motor Industry Software Reliability Association 汽车工业软件可靠性联会) 是位于英国 的一个跨国汽车工业协会,其成员包括了大部分欧美汽车生产商。其核心使命是为汽车工业提供服务和协助, 帮助厂方开发安全的、高可靠性的嵌入式软件。这个组织最出名的成果是所谓的 MISRA C Coding Standard, 这一标准中包括了 127条 C语言编码标准,通常认为,如果能够完全遵守这些标准,那你的 C代码是易读、可 靠、可移植和易于维护的。现在很多嵌入式开发者都以 MISRA C来衡量自己的编码风格,比如 uC/OS-II就宣 传 99%遵守 MISRA标准。 4.2.2 FreeRTOS的命名规则 初学 FreeRTOS的用户对其变量和函数的命名比较迷惑,下面专门做一下介绍:  变量  uint32_t定义的变量都加上前缀 ul。u代表 unsigned 无符号,l代表 long长整型。  uint16_t定义的变量都加上前缀 us。u代表 unsigned无符号,s代表 short短整型。  uint8_t定义的变量都加上前缀 uc。u代表 unsigned无符号,c代表 char字符型。  stdint.h文件中未定义的变量类型,在定义变量时需要加上前缀 x,比如 BaseType_t和 TickType_t定 义的变量。  stdint.h文件中未定义的无符号变量类型,在定义变量时要加上前缀 u,比如 UBaseType_t 定义的变 量要加上前缀 ux。  size_t 定义的变量也要加上前缀 ux。  枚举变量会加上前缀 e。  指针变量会加上前缀 p,比如 uint16_t定义的指针变量会加上前缀 pus。  根据 MISRA代码规则,char定义的变量只能用于 ASCII字符,前缀使用 c。  根据 MISRA代码规则,char *定义的指针变量只能用于 ASCII字符串,前缀使用 pc。  函数  加上了 static声明的函数,定义时要加上前缀 prv,这个是单词 private的缩写。  带有返回值的函数,根据返回值的数据类型,加上相应的前缀,如果没有返回值,即 void类型 ,函数的前缀加上字母 v。  根据文件名,文件中相应的函数定义时也将文件名加到函数命名中,比如 tasks.c 文件中函数 vTaskDelete,函数中的 task 就是文件名中的 task。  宏定义  根据宏定义所在的文件,文件中的宏定义声明时也将文件名加到宏定义中,比如宏定义 configUSE_PREEMPTION 是定义在文件 FreeRTOSConfig.h 里面。宏定义中的 config就是文件名中的 config。另外注意,前缀要小写。  除了前缀,其余部分全部大写,同时用下划线分开。  char型变量无符号数和有符号数的切换方法 MDK 中可以在 Options->C/C++选项中设置 char型变量为有符号数或者无符号数,默认不选择单选框的情况下 char型变量是 8位无符号数,选上后就是 8位有符号数:
2022-11-11 20:49:35 10.1MB freertos, mcu, 嵌入式
1
OrangeBot电机控制器v2 OrangeBot机器人的电机控制器。 VNH7040 + GD32VF103
2022-11-07 11:31:45 7.79MB C++
1