单片机C868实现无传感器BLDC电机控制
发布时间:2008/5/27 0:00:00 访问次数:443
引 言
bldc具备诸多优势,例如外型紧凑、结构简单、高效率、低噪音、较长使用寿命等等,这种电机越来越广泛地应用于自动化、工业和消费类电子产品等领域。图1所示为典型的bldc电机框图,该电机包括一个梯形磁通的永磁同步电机、一个转子位置检测器(通常为三个霍尔传感器)和一个驱动电机的三相逆变器。另外,必须配置一个单片机(mcu),输出特定的脉冲宽度调制(pwm)模式来驱动bldc电机。如同一个传统直流电机那样,电机的换流必须与转子位置同步,用户可以通过改变pwm的占空比来调节电机转速。
sp; 图1 bldc电机框图
通常,电机中的三个霍尔传感器相互成60度角。也就是说,每隔60度其中一个传感器就会变换其状态,完成一次电循环需要进行6次状态变换。在这种情况下,定子的相电流始于霍尔传感器信号转换后的30度,保持120度。为了使电机正常运行,mcu的输出模式(换流顺序)应当依据输入模式(转子位置信号)来确定,输入转子位置信号模式与输出pwm模式相结合,即构成换流表。
单片机c868和capcom6e单元
c868是英飞凌公司8位单片机产品家族中的新成员,可为各种应用和系统提供低成本的先进控制功能。借助功能强大的片上pwm发生单元capcom6e,c868满足了对低成本、高实时性的电力电子控制的所有要求。利用灵活的capcom6e,由硬件/软件处理所有对时间要求十分苛刻的任务,而cpu则处理用户命令,并可进行相应的控制运算。内置的5通道8位adc所具备的同步特性有助于测量无噪音相关的系统参数。
capcom6e可驱动多种类型的电机(交流异步电机im、直流无刷电机bldc和开关磁阻电机srm等),它是基于此类pwm单元十多年的研发的最新成果。capcom6e具备以下特性:
—t12具有三个捕捉/比较通道,每个通道有两个输出,可用作捕捉通道或比较通道,并且具备死区时间控制,可避免电源电路出现短路。t12有中心对齐、边缘对齐、单脉冲触发模式和滞环控制等控制模式。对于bldc电机控制,通道1可用于捕捉速度,通道2可用作相位延迟,而通道3可用作超时功能。
—t13有一个独立的比较通道和1路输出,可生成高速pwm信号,并控制占空比。t13也支持单脉冲触发模式,可与t12同步。pwm信号可自动迭加至t12的6路输出中任何一路(或全部)的有效电平上。对于bldc电机控制,通过t13 pwm的占空比调节电机速度。
如图2所示,cc60-cc62和cout60-cout62是用于驱动电机的6个基本输出信号。对于bldc电机控制,应当通过三个输入口ccpos0-ccpos2(转子位置反馈信号)的状态来控制输出信号。t13生成的高频pwm信号具有高达50ns的分辨率,加至t12的cc60-cc62和cout60-cout62输出中的任何一个有效电平。ctrap是紧急中断输入。如果该输入为低,cc60-cc62和cout60-cout62将立即变为预定义的电平,以实现过流/过压保护。用户仅需设置各种寄存器的值,例如周期寄存器、比较寄存器、偏移寄存器等等,即可快捷地控制capcom6e。
的块交换表的源代码。数组下标hall_patterns_number 从0至5。
// hall patterns
ubyte hallpatterns [hall_patterns_number]=
{
0x25, // current="100" expected="101"
0x29, // current="101" expected="001"
0x0b, // current="001" expected="011"
0x1a, // current="011" expected="010"
0x16, // current="010" expected="110"
0x34, // current="110" expected="100"
};
ubyte pwmpatterns[ hall_patterns_number]=
{
0x18, // u="0" v=- w=+ cout62/cc62=01 cout61/cc61=10 cout60/cc60=00
0x12, // u=- v="0" w=+ cout62/cc62=01 cout61/cc61=00 cout60/cc60=10
0x06, // u=- v=+ w="0" cout62/cc62=00 cout61/cc61=01 cout60/cc60=10
0x24, // u="0" v=+ w=- cout62/cc62=10 cout61/cc61=01 cout60/cc60=00
0x21, // u=+ v="0" w=- cout62/cc62=10 cout61/cc61=00 cout60/cc60=01
0x09 // u=+ v=-w=0 cout62/cc62=00 cout61/cc61=10 cout60/cc60=01
};无传感器的bldc控制
bldc具备诸多优势,例如外型紧凑、结构简单、高效率、低噪音、较长使用寿命等等,这种电机越来越广泛地应用于自动化、工业和消费类电子产品等领域。图1所示为典型的bldc电机框图,该电机包括一个梯形磁通的永磁同步电机、一个转子位置检测器(通常为三个霍尔传感器)和一个驱动电机的三相逆变器。另外,必须配置一个单片机(mcu),输出特定的脉冲宽度调制(pwm)模式来驱动bldc电机。如同一个传统直流电机那样,电机的换流必须与转子位置同步,用户可以通过改变pwm的占空比来调节电机转速。
&nb
|
通常,电机中的三个霍尔传感器相互成60度角。也就是说,每隔60度其中一个传感器就会变换其状态,完成一次电循环需要进行6次状态变换。在这种情况下,定子的相电流始于霍尔传感器信号转换后的30度,保持120度。为了使电机正常运行,mcu的输出模式(换流顺序)应当依据输入模式(转子位置信号)来确定,输入转子位置信号模式与输出pwm模式相结合,即构成换流表。
单片机c868和capcom6e单元
c868是英飞凌公司8位单片机产品家族中的新成员,可为各种应用和系统提供低成本的先进控制功能。借助功能强大的片上pwm发生单元capcom6e,c868满足了对低成本、高实时性的电力电子控制的所有要求。利用灵活的capcom6e,由硬件/软件处理所有对时间要求十分苛刻的任务,而cpu则处理用户命令,并可进行相应的控制运算。内置的5通道8位adc所具备的同步特性有助于测量无噪音相关的系统参数。
capcom6e可驱动多种类型的电机(交流异步电机im、直流无刷电机bldc和开关磁阻电机srm等),它是基于此类pwm单元十多年的研发的最新成果。capcom6e具备以下特性:
—t12具有三个捕捉/比较通道,每个通道有两个输出,可用作捕捉通道或比较通道,并且具备死区时间控制,可避免电源电路出现短路。t12有中心对齐、边缘对齐、单脉冲触发模式和滞环控制等控制模式。对于bldc电机控制,通道1可用于捕捉速度,通道2可用作相位延迟,而通道3可用作超时功能。
—t13有一个独立的比较通道和1路输出,可生成高速pwm信号,并控制占空比。t13也支持单脉冲触发模式,可与t12同步。pwm信号可自动迭加至t12的6路输出中任何一路(或全部)的有效电平上。对于bldc电机控制,通过t13 pwm的占空比调节电机速度。
如图2所示,cc60-cc62和cout60-cout62是用于驱动电机的6个基本输出信号。对于bldc电机控制,应当通过三个输入口ccpos0-ccpos2(转子位置反馈信号)的状态来控制输出信号。t13生成的高频pwm信号具有高达50ns的分辨率,加至t12的cc60-cc62和cout60-cout62输出中的任何一个有效电平。ctrap是紧急中断输入。如果该输入为低,cc60-cc62和cout60-cout62将立即变为预定义的电平,以实现过流/过压保护。用户仅需设置各种寄存器的值,例如周期寄存器、比较寄存器、偏移寄存器等等,即可快捷地控制capcom6e。
图2 capcom6e框图
值得指出的是借助capcom6e,用户可通过软件建立任何块交换表(或状态机),同时由硬件生成相应的pwm输出信号。这样可以非常灵活地实现任何控制要求。下面的例子是以定义自制
// hall patterns
ubyte hallpatterns [hall_patterns_number]=
{
0x25, // current="100" expected="101"
0x29, // current="101" expected="001"
0x0b, // current="001" expected="011"
0x1a, // current="011" expected="010"
0x16, // current="010" expected="110"
0x34, // current="110" expected="100"
};
ubyte pwmpatterns[ hall_patterns_number]=
{
0x18, // u="0" v=- w=+ cout62/cc62=01 cout61/cc61=10 cout60/cc60=00
0x12, // u=- v="0" w=+ cout62/cc62=01 cout61/cc61=00 cout60/cc60=10
0x06, // u=- v=+ w="0" cout62/cc62=00 cout61/cc61=01 cout60/cc60=10
0x24, // u="0" v=+ w=- cout62/cc62=10 cout61/cc61=01 cout60/cc60=00
0x21, // u=+ v="0" w=- cout62/cc62=10 cout61/cc61=00 cout60/cc60=01
0x09 // u=+ v=-w=0 cout62/cc62=00 cout61/cc61=10 cout60/cc60=01
};无传感器的bldc控制
引 言
bldc具备诸多优势,例如外型紧凑、结构简单、高效率、低噪音、较长使用寿命等等,这种电机越来越广泛地应用于自动化、工业和消费类电子产品等领域。图1所示为典型的bldc电机框图,该电机包括一个梯形磁通的永磁同步电机、一个转子位置检测器(通常为三个霍尔传感器)和一个驱动电机的三相逆变器。另外,必须配置一个单片机(mcu),输出特定的脉冲宽度调制(pwm)模式来驱动bldc电机。如同一个传统直流电机那样,电机的换流必须与转子位置同步,用户可以通过改变pwm的占空比来调节电机转速。
sp; 图1 bldc电机框图
通常,电机中的三个霍尔传感器相互成60度角。也就是说,每隔60度其中一个传感器就会变换其状态,完成一次电循环需要进行6次状态变换。在这种情况下,定子的相电流始于霍尔传感器信号转换后的30度,保持120度。为了使电机正常运行,mcu的输出模式(换流顺序)应当依据输入模式(转子位置信号)来确定,输入转子位置信号模式与输出pwm模式相结合,即构成换流表。
单片机c868和capcom6e单元
c868是英飞凌公司8位单片机产品家族中的新成员,可为各种应用和系统提供低成本的先进控制功能。借助功能强大的片上pwm发生单元capcom6e,c868满足了对低成本、高实时性的电力电子控制的所有要求。利用灵活的capcom6e,由硬件/软件处理所有对时间要求十分苛刻的任务,而cpu则处理用户命令,并可进行相应的控制运算。内置的5通道8位adc所具备的同步特性有助于测量无噪音相关的系统参数。
capcom6e可驱动多种类型的电机(交流异步电机im、直流无刷电机bldc和开关磁阻电机srm等),它是基于此类pwm单元十多年的研发的最新成果。capcom6e具备以下特性:
—t12具有三个捕捉/比较通道,每个通道有两个输出,可用作捕捉通道或比较通道,并且具备死区时间控制,可避免电源电路出现短路。t12有中心对齐、边缘对齐、单脉冲触发模式和滞环控制等控制模式。对于bldc电机控制,通道1可用于捕捉速度,通道2可用作相位延迟,而通道3可用作超时功能。
—t13有一个独立的比较通道和1路输出,可生成高速pwm信号,并控制占空比。t13也支持单脉冲触发模式,可与t12同步。pwm信号可自动迭加至t12的6路输出中任何一路(或全部)的有效电平上。对于bldc电机控制,通过t13 pwm的占空比调节电机速度。
如图2所示,cc60-cc62和cout60-cout62是用于驱动电机的6个基本输出信号。对于bldc电机控制,应当通过三个输入口ccpos0-ccpos2(转子位置反馈信号)的状态来控制输出信号。t13生成的高频pwm信号具有高达50ns的分辨率,加至t12的cc60-cc62和cout60-cout62输出中的任何一个有效电平。ctrap是紧急中断输入。如果该输入为低,cc60-cc62和cout60-cout62将立即变为预定义的电平,以实现过流/过压保护。用户仅需设置各种寄存器的值,例如周期寄存器、比较寄存器、偏移寄存器等等,即可快捷地控制capcom6e。
的块交换表的源代码。数组下标hall_patterns_number 从0至5。
// hall patterns
ubyte hallpatterns [hall_patterns_number]=
{
0x25, // current="100" expected="101"
0x29, // current="101" expected="001"
0x0b, // current="001" expected="011"
0x1a, // current="011" expected="010"
0x16, // current="010" expected="110"
0x34, // current="110" expected="100"
};
ubyte pwmpatterns[ hall_patterns_number]=
{
0x18, // u="0" v=- w=+ cout62/cc62=01 cout61/cc61=10 cout60/cc60=00
0x12, // u=- v="0" w=+ cout62/cc62=01 cout61/cc61=00 cout60/cc60=10
0x06, // u=- v=+ w="0" cout62/cc62=00 cout61/cc61=01 cout60/cc60=10
0x24, // u="0" v=+ w=- cout62/cc62=10 cout61/cc61=01 cout60/cc60=00
0x21, // u=+ v="0" w=- cout62/cc62=10 cout61/cc61=00 cout60/cc60=01
0x09 // u=+ v=-w=0 cout62/cc62=00 cout61/cc61=10 cout60/cc60=01
};无传感器的bldc控制
bldc具备诸多优势,例如外型紧凑、结构简单、高效率、低噪音、较长使用寿命等等,这种电机越来越广泛地应用于自动化、工业和消费类电子产品等领域。图1所示为典型的bldc电机框图,该电机包括一个梯形磁通的永磁同步电机、一个转子位置检测器(通常为三个霍尔传感器)和一个驱动电机的三相逆变器。另外,必须配置一个单片机(mcu),输出特定的脉冲宽度调制(pwm)模式来驱动bldc电机。如同一个传统直流电机那样,电机的换流必须与转子位置同步,用户可以通过改变pwm的占空比来调节电机转速。
&nb
|
通常,电机中的三个霍尔传感器相互成60度角。也就是说,每隔60度其中一个传感器就会变换其状态,完成一次电循环需要进行6次状态变换。在这种情况下,定子的相电流始于霍尔传感器信号转换后的30度,保持120度。为了使电机正常运行,mcu的输出模式(换流顺序)应当依据输入模式(转子位置信号)来确定,输入转子位置信号模式与输出pwm模式相结合,即构成换流表。
单片机c868和capcom6e单元
c868是英飞凌公司8位单片机产品家族中的新成员,可为各种应用和系统提供低成本的先进控制功能。借助功能强大的片上pwm发生单元capcom6e,c868满足了对低成本、高实时性的电力电子控制的所有要求。利用灵活的capcom6e,由硬件/软件处理所有对时间要求十分苛刻的任务,而cpu则处理用户命令,并可进行相应的控制运算。内置的5通道8位adc所具备的同步特性有助于测量无噪音相关的系统参数。
capcom6e可驱动多种类型的电机(交流异步电机im、直流无刷电机bldc和开关磁阻电机srm等),它是基于此类pwm单元十多年的研发的最新成果。capcom6e具备以下特性:
—t12具有三个捕捉/比较通道,每个通道有两个输出,可用作捕捉通道或比较通道,并且具备死区时间控制,可避免电源电路出现短路。t12有中心对齐、边缘对齐、单脉冲触发模式和滞环控制等控制模式。对于bldc电机控制,通道1可用于捕捉速度,通道2可用作相位延迟,而通道3可用作超时功能。
—t13有一个独立的比较通道和1路输出,可生成高速pwm信号,并控制占空比。t13也支持单脉冲触发模式,可与t12同步。pwm信号可自动迭加至t12的6路输出中任何一路(或全部)的有效电平上。对于bldc电机控制,通过t13 pwm的占空比调节电机速度。
如图2所示,cc60-cc62和cout60-cout62是用于驱动电机的6个基本输出信号。对于bldc电机控制,应当通过三个输入口ccpos0-ccpos2(转子位置反馈信号)的状态来控制输出信号。t13生成的高频pwm信号具有高达50ns的分辨率,加至t12的cc60-cc62和cout60-cout62输出中的任何一个有效电平。ctrap是紧急中断输入。如果该输入为低,cc60-cc62和cout60-cout62将立即变为预定义的电平,以实现过流/过压保护。用户仅需设置各种寄存器的值,例如周期寄存器、比较寄存器、偏移寄存器等等,即可快捷地控制capcom6e。
图2 capcom6e框图
值得指出的是借助capcom6e,用户可通过软件建立任何块交换表(或状态机),同时由硬件生成相应的pwm输出信号。这样可以非常灵活地实现任何控制要求。下面的例子是以定义自制
// hall patterns
ubyte hallpatterns [hall_patterns_number]=
{
0x25, // current="100" expected="101"
0x29, // current="101" expected="001"
0x0b, // current="001" expected="011"
0x1a, // current="011" expected="010"
0x16, // current="010" expected="110"
0x34, // current="110" expected="100"
};
ubyte pwmpatterns[ hall_patterns_number]=
{
0x18, // u="0" v=- w=+ cout62/cc62=01 cout61/cc61=10 cout60/cc60=00
0x12, // u=- v="0" w=+ cout62/cc62=01 cout61/cc61=00 cout60/cc60=10
0x06, // u=- v=+ w="0" cout62/cc62=00 cout61/cc61=01 cout60/cc60=10
0x24, // u="0" v=+ w=- cout62/cc62=10 cout61/cc61=01 cout60/cc60=00
0x21, // u=+ v="0" w=- cout62/cc62=10 cout61/cc61=00 cout60/cc60=01
0x09 // u=+ v=-w=0 cout62/cc62=00 cout61/cc61=10 cout60/cc60=01
};无传感器的bldc控制
上一篇:单片机在电磁炉中的应用
上一篇:单片机在智能IC卡燃气表中的应用