CN114954882B - 一种水下机器人推进器控制***及方法 - Google Patents
一种水下机器人推进器控制***及方法 Download PDFInfo
- Publication number
- CN114954882B CN114954882B CN202210597339.9A CN202210597339A CN114954882B CN 114954882 B CN114954882 B CN 114954882B CN 202210597339 A CN202210597339 A CN 202210597339A CN 114954882 B CN114954882 B CN 114954882B
- Authority
- CN
- China
- Prior art keywords
- time
- commutation
- timer1
- timer
- brushless motor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 230000001105 regulatory effect Effects 0.000 claims abstract description 25
- 238000012545 processing Methods 0.000 claims abstract description 7
- 238000001514 detection method Methods 0.000 claims description 59
- 238000004364 calculation method Methods 0.000 claims description 18
- 230000008859 change Effects 0.000 claims description 16
- 230000001276 controlling effect Effects 0.000 claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 230000001174 ascending effect Effects 0.000 claims description 3
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 4
- 238000013178 mathematical model Methods 0.000 description 3
- 238000004804 winding Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 102220054093 rs147698935 Human genes 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B63—SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
- B63H—MARINE PROPULSION OR STEERING
- B63H21/00—Use of propulsion power plant or units on vessels
- B63H21/21—Control means for engine or transmission, specially adapted for use on marine vessels
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B63—SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
- B63H—MARINE PROPULSION OR STEERING
- B63H21/00—Use of propulsion power plant or units on vessels
- B63H21/12—Use of propulsion power plant or units on vessels the vessels being motor-driven
- B63H21/17—Use of propulsion power plant or units on vessels the vessels being motor-driven by electric motor
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P21/00—Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation
- H02P21/0003—Control strategies in general, e.g. linear type, e.g. P, PI, PID, using robust control
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P5/00—Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors
- H02P5/46—Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors for speed regulation of two or more dynamo-electric motors in relation to one another
- H02P5/50—Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors for speed regulation of two or more dynamo-electric motors in relation to one another by comparing electrical values representing the speeds
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P6/00—Arrangements for controlling synchronous motors or other dynamo-electric motors using electronic commutation dependent on the rotor position; Electronic commutators therefor
- H02P6/08—Arrangements for controlling the speed or torque of a single motor
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P6/00—Arrangements for controlling synchronous motors or other dynamo-electric motors using electronic commutation dependent on the rotor position; Electronic commutators therefor
- H02P6/14—Electronic commutators
- H02P6/16—Circuit arrangements for detecting position
- H02P6/18—Circuit arrangements for detecting position without separate position detecting elements
- H02P6/182—Circuit arrangements for detecting position without separate position detecting elements using back-emf in windings
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B63—SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
- B63H—MARINE PROPULSION OR STEERING
- B63H21/00—Use of propulsion power plant or units on vessels
- B63H21/21—Control means for engine or transmission, specially adapted for use on marine vessels
- B63H2021/216—Control means for engine or transmission, specially adapted for use on marine vessels using electric control means
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02B—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
- Y02B70/00—Technologies for an efficient end-user side electric power management and consumption
- Y02B70/10—Technologies improving the efficiency by using switched-mode power supplies [SMPS], i.e. efficient power electronics conversion e.g. power factor correction or reduction of losses in power supplies or efficient standby modes
Landscapes
- Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Mechanical Engineering (AREA)
- Ocean & Marine Engineering (AREA)
- Control Of Motors That Do Not Use Commutators (AREA)
Abstract
本发明公开一种水下机器人推进器控制***及方法,该方法包括根据直流无刷电机的反向电动势过零点时刻和Timer1定时器预设的期望换相时刻溢出时刻计算中点误差,并通过直流无刷电机的换相时间对中点误差进行补偿;Timer1定时器根据中点误差对换相进行判断确定是产生换相事件还是产生对直流无刷电机进行消隐处理事件,并根据不同事件产生第一PWM调节信号;Timer2定时器根据期望的转动速度产生预期脉宽计数周期和占空比的第二PWM调节信号;根据第一PWM调节信号、第二PWM调节信号对直流无刷电机进行对应的联合控制。
Description
技术领域
本发明涉及电机控制技术领域,尤其涉及一种水下机器人推进器控制***及方法。
背景技术
随着水下机器人技术不断的发展和应用,其推进***也显得尤为重要,常见的推进***有液压推进***、永磁同步电机推进***和直流无刷电机推进***。
现有水下机器人的推进***存在着动力定位差,控制精度低,推进器的成本较高等问题。
发明内容
针对现有技术存在的不足,本发明的目的是提供一种水下机器人推进器控制***及方法,用于解决现有水下机器人的推进***存在着动力定位差,控制精度低,推进器的成本较高的问题。
根据本发明的第一个方面,提供了一种水下机器人推进器控制方法,包括:
步骤100:根据直流无刷电机的反向电动势过零点时刻和Timer1定时器预设的期望换相时刻溢出时刻计算中点误差,并通过直流无刷电机的换相时间对中点误差进行补偿;
步骤200:Timer1定时器根据中点误差对换相进行判断确定是产生换相事件还是产生对直流无刷电机进行消隐处理事件,并根据不同事件产生第一PWM调节信号;
步骤300:Timer2定时器根据期望的转动速度产生预期脉宽计数周期和占空比的第二PWM调节信号;
步骤400:根据第一PWM调节信号、第二PWM调节信号对直流无刷电机进行对应的联合控制。
本发明的一种水下机器人推进器控制方法,通过对直流无刷电机的反向电动势进行过零检测换相处理,省去了霍尔传感器检测相位,无霍尔磁滞偏移问题,成本更低。
在一些实施方式中,根据直流无刷电机的反向电动势过零点时刻和Timer1定时器预设的期望换相时刻溢出时刻计算中点误差,并通过直流无刷电机的换相时间对中点误差进行补偿包括:
步骤101:初始时Timer1定时器预先设置为在期望换相时刻溢出时刻;
步骤102:反向电动势检测模块检测直流无刷电机的反向电动势过零点时刻,计算出过零时刻到下一次换相之间的时间,将过零时刻对应的计算值读入Timer1定时器,并将Timer1定时器中对应过零时刻的读入值和Timer1定时器中对应期望换相时刻溢出时刻的计数值之间的误差用来调整下一个周期的Timer1定时器的预设值,Timer1定时器在期望换相时刻溢出时刻至下一次换相时间对直流无刷电机驱动相位进行消隐操作;
步骤103:Timer1定时器根据前一次过零误差调整下一个周期的换相时间,Timer1定时器进行复位并在距离当前时刻之后的1/2换相时间处溢出;
步骤104:反向电动势检测模块再一次检测到过零时刻后,与预期的过零时间进行误差计算,将该次的过零误差用来调整下一个换相周期;
步骤105:Timer1定时器进行复位并在距离当前时刻之后的1/2换相时间处溢出,然后转步骤101。
在一些实施方式中,对直流无刷电机进行对应的联合控制包括根据Timer1的定时时间结合直流无刷电机转动的死区时间、同相时间联合控制换相;其包括:
步骤201:Timer1定时器根据初始时Timer1定时器预先设置的定时时间,产生溢出中断信号,Timer1定时器根据检测到直流无刷电机的死区时间和同相时间计算出Timer1定时器需要重新装载的参数值;
步骤202:反向电动势检测模块对反向电动势经过零点电压的方向进行判断,若是上升方向则转步骤203,否则转步骤204;
步骤203:将直流无刷电机换相控制的下一步逻辑状态设置为过零点状态,然后转步骤201;
步骤204:将直流无刷电机换相控制的下一步逻辑状态设置为换相状态,改变直流无刷电机的驱动器的驱动逻辑,让直流无刷电机进行换相后转步骤201。
在一些实施方式中,检测直流无刷电机的反向电动势过零点时刻包括:
步骤301:反向电动势检测模块的比较器产生中断,Timer1定时器根据比较器的中断信号记录当前时间;
步骤302:根据同相时间和当前时间计算换相误差时间;
步骤303:对计算的误差进行判断,判断误差的绝对值是否小于同相时间的1/8,若是误差绝对值小于同相时间的1/8,则转步骤304,否则转步骤305;
步骤304:将反向电动势过零检测锁定逻辑的状态值设置为真,然后转步骤306;
步骤305:将反向电动势过零检测锁定逻辑的状态值设置为假,然后转步骤306;
步骤306:Timer1定时器更新当前的计数时间为负的同相时间的1/2;
步骤307:更新当前的同相时间,当前的同相时间等于之前的同相时间加上四分之一误差时间;
步骤308:将直流无刷电机换相控制的下一步逻辑状态设置为换相的状态,同时改变直流无刷电机的驱动器的驱动逻辑,让直流无刷电机进行换相后转步骤301。
在一些实施方式中,对直流无刷电机进行消隐处理包括:
步骤401:Timer1定时器根据预设定的定时时间产生定时中断信号;
步骤402:根据Timer1定时器产生的定时中断信号,选择同相相位对应的状态;
步骤403:根据同相相位对应的状态来设定Timer2定时器的输出参数值,设定恒定输出模式,设定反向电动势检测模块中的比较器输入值,设置反向电动势检测模块过零点电压方向上升/下降标志;
步骤404:将当前的同相相位对应的状态赋值给下一次同相相位,用来计算消隐时间;
步骤405:将Timer1定时器当前的定时时间减去消隐时间后,将该定时时间赋值给Timer1定时器,重新定时;
步骤406:步骤405中Timer1定时器定时时间到达后,将直流无刷电机换相控制的下一步逻辑状态设置为消隐的状态,然后转步骤401重复检测。
在一些实施方式中,还包括根据直流无刷电机的转子速度和转子每相的相电流对直流无刷电机进行闭环反馈控制。
在一些实施方式中,根据直流无刷电机的转子速度和转子每相的相电流对直流无刷电机进行闭环反馈控制包括:
步骤501:根据直流无刷电机的定子在上一时刻和当前时刻的电流、定子的电阻值、转子的角速度、定子和转子的电感值和转子的输出电压值建立直流无刷电机的速度控制整体模型;
步骤502:根据测量到的转子的角速度设计速度PI控制器;
步骤503:根据速度PI控制器计算出给定的直流无刷电机的驱动电流;
步骤504:根据计算出给定的电流后,设计电流环的PID控制模型;
步骤505:根据PID控制电流环,输出控制电流,用该电流值去调整Timer2定时器PWM的输出脉宽及频率,实现对直流无刷电机的速度闭环控制。
根据本发明的第二个方面,提供一种水下机器人推进器控制***,用于实现上述的一种水下机器人推进器控制方法,包括:中点误差补偿模块、Timer1定时器、Timer2定时器和直流无刷电机控制模块;
中点误差补偿模块根据直流无刷电机的反向电动势过零点时刻和Timer1定时器预设的期望换相时刻溢出时刻计算中点误差,并通过直流无刷电机的换相时间对中点误差进行补偿;
Timer1定时器根据中点误差对换相进行判断确定是产生换相事件还是产生对直流无刷电机进行消隐处理事件,并根据不同事件产生第一PWM调节信号;
Timer2定时器根据期望的转动速度产生预期脉宽计数周期和占空比的第二PWM调节信号;
直流无刷电机控制模块根据第一PWM调节信号、第二PWM调节信号对直流无刷电机进行对应的联合控制。
在一些实施方式中,中点误差补偿模块包括:反向电动势检测模块、复用比较器、计算中点误差模块、PI控制模块和计算换相时间模块;
反向电动势检测模块对直流无刷电机的反向电动势进行过零检测;
复用比较器用于将反向电动势检测模块检测到的检测结果和Timer1定时器的换相定时中断事件结果进行比较;
计算中点误差模块根据复用比较器的比较结果进行中点误差计算;
PI控制模块用于将中点误差进行比例积分换算;
计算换相时间模块计算直流无刷电机的换相时间,并将换相时间对中点误差进行补偿。
在一些实施方式中,直流无刷电机控制模块包括换相和速度计算模块、可控PWM输出模块和电机驱动器;
换相和速度计算模块根据直流无刷电机转速和换相所需时间产生第二PWM调节信号;
可控PWM输出模块根据第一PWM调节信号和第二PWM调节信号产生控制直流无刷电机的PWM驱动信号;
电机驱动器根据PWM驱动信号驱动直流无刷电机。
与现有技术相比,本发明的一种水下机器人推进器控制***及方法,通过对反向电动势的过零检测进行换相,省去了霍尔传感器检测相位,无霍尔磁滞偏移问题,成本更低,且还通过采用闭环积分比例控制消除驱动误差,具有时序自校正的功能,实现最优的电机转矩输出,通过对直流无刷电机(BLDC)的电压和电流检测,结合PI、PID控制器对电机的速度进行闭环控制,实现推进器速度的精确控制,从而使水下机器人在复杂的海洋环境中实现高精度动力定位,使水下机器人在水下可以平稳、高效、准确的控制位置。
附图说明
图1为本发明推进***水平面布局图;
图2为本发明推进***垂直面布局图;
图3为本发明一实施方式的一种水下机器人推进器控制方法的流程图;
图4为本发明一实施方式的直流无刷电机的换相时间补偿计算流程图;
图5为本发明一实施方式的直流无刷电机的换相控制流程图;
图6为本发明一实施方式的直流无刷电机的反向电动势过零检测控制流程图;
图7为本发明一实施方式的直流无刷电机的消隐处理控制流程图;
图8为本发明一实施方式的直流无刷电机的换相相位检测示意图;
图9为本发明一实施方式的直流无刷电机速度闭环控制的PID控制器流程图;
图10为本发明一实施方式的一种水下机器人推进器控制***的组成示意图。
附图标号说明:中点误差补偿模块100,Timer1定时器200,Timer2定时器300,直流无刷电机控制模块400。
具体实施方式
下面结合附图对本发明作进一步详细的说明。
水下机器人的推进***由4台水平推进器和3台垂直推进器组成,水平方向与垂直方向的推进完全独立。
水平方向的推进采用矢量布局的结构形式如图1,4台推进器分别安装在上框架下部的左前(M1)、右前(M2)、左后(M3)、右后(M4)4个位置上,推进器的中轴线L1与水下机器人的纵向轴线L2的夹角为45度,用于水下机器人的前进后退、左右侧移和转向的驱动及控制,采用该角度布置驱动器,驱动器在推进水下机器人动作时可以降低水流对水下机器人的阻力,提高推进效率。
垂直方向上采用3个推进器,用于水下机器人的下潜上浮运动的驱动及控制。垂直方向推进器布置的结构形式如图2,M6和M7布置在左右两侧,并分别向外侧下方倾斜20度,即推进器的中轴线L3与外侧下方L4的夹角为45度,M5布置在中央,并垂直向下,M5~M7采用该结构布置方式可以有效的降低水流对水下机器人自身结构的影响,提高了对水下机器人在水中姿态控制的稳定性。
根据本发明的第一个方面,图3示意性地显示了根据本发明的一种实施方式的一种水下机器人推进器控制方法。如图3所示,该一种水下机器人推进器控制方法包括:
步骤100:根据直流无刷电机的反向电动势过零点时刻和Timer1定时器预设的期望换相时刻溢出时刻计算中点误差,并通过直流无刷电机的换相时间对中点误差进行补偿;
步骤200:Timer1定时器根据中点误差对换相进行判断确定是产生换相事件还是产生对直流无刷电机进行消隐处理事件,并根据不同事件产生第一PWM调节信号;
步骤300:Timer2定时器根据期望的转动速度产生预期脉宽计数周期和占空比的第二PWM调节信号;
步骤400:根据第一PWM调节信号、第二PWM调节信号对直流无刷电机进行对应的联合控制。
如图4所示,根据直流无刷电机的反向电动势过零点时刻和Timer1定时器预设的期望换相时刻溢出时刻计算中点误差,并通过直流无刷电机的换相时间对中点误差进行补偿包括:
步骤101:初始时Timer1定时器预先设置为在期望换相时刻溢出时刻C;
步骤102:反向电动势检测模块检测直流无刷电机的反向电动势过零点时刻,计算出过零时刻到下一次换相之间的时间T30,即相邻换相事件之间的时间T60=T30*2,将T30过零时刻对应的计算值读入Timer1定时器,并标记为ZC,并将Timer1定时器中对应过零时刻的读入值和Timer1定时器中对应期望换相时刻溢出时刻的计数值之间的误差用来调整下一个周期的Timer1定时器的预设值C,Timer1定时器在期望换相时刻溢出时刻C至下一次换相时间ZC对直流无刷电机驱动相位进行消隐操作;
步骤103:Timer1定时器根据前一次过零误差调整下一个周期的换相时间,Timer1定时器进行复位并在距离当前时刻之后的1/2换相时间处溢出;
步骤104:反向电动势检测模块再一次检测到过零时刻后,与预期的过零时间进行误差计算,将该次的过零误差用来调整下一个换相周期;
步骤105:Timer1定时器进行复位并在距离当前时刻之后的1/2换相时间处溢出,然后转步骤101。
如图5所示,对直流无刷电机进行对应的联合控制包括根据Timer1的定时时间结合直流无刷电机转动的死区时间、同相时间联合控制换相;其包括:
步骤201:Timer1定时器根据初始时Timer1定时器预先设置的定时时间C,产生溢出中断信号,根据Timer1定时器根据检测到直流无刷电机的死区时间(BlankingTime)和同相时间(CommTime)计算出Timer1定时器需要重新装载的参数值;其中,需要重新装载的参数值=BlankingTime-CommTime,即装载值等于死区时间减去同相时间;
步骤202:反向电动势检测模块对反向电动势经过零点电压的方向进行判断,若是上升方向则转步骤203,否则转步骤204;
步骤203:将直流无刷电机换相控制的下一步逻辑状态(NextState)设置为过零点状态,然后转步骤201;
步骤204:将直流无刷电机换相控制的下一步逻辑状态(NextState)设置为换相状态,改变直流无刷电机的驱动器的驱动逻辑,让直流无刷电机进行换相后转步骤201。
如图6所示,检测直流无刷电机的反向电动势过零点时刻包括:
步骤301:反向电动势检测模块的比较器产生中断,Timer1定时器根据比较器的中断信号记录当前时间NOW;其中,此处比较器是指反向电动势检测模块中的子模块比较器,用来监测未导通相电压,并将该电压与供电电压的一半进行比较,该比较器在监测到未导通相电压在穿越供应电压的一半时,产生中断信号;
步骤302:根据同相时间和当前时间计算换相误差时间,其中,误差时间等于同相时间(CommTime/2+NOW);
步骤303:对计算的误差进行判断,判断误差的绝对值是否小于同相时间的1/8(CommTime/8),若是误差绝对值小于同相时间的1/8(CommTime/8),则转步骤304,否则转步骤305;
步骤304:将反向电动势过零检测锁定逻辑(Locked)的状态值设置为真,然后转步骤306;
步骤305:将反向电动势过零检测锁定逻辑(Locked)的状态值设置为假,然后转步骤306;
步骤306:Timer1定时器更新当前的计数时间为负的同相时间的1/2,即Timer1定时器更新当前的计数时间为-CommTime/2;
步骤307:更新当前的同相时间CommTime,当前的同相时间等于之前的同相时间加上四分之一误差时间Error/4,即当前的CommTime=之前的CommTime+Error/4;
步骤308:将直流无刷电机换相控制的下一步逻辑状态(NextState)设置为换相的状态,同时改变直流无刷电机的驱动器的驱动逻辑,让直流无刷电机进行换相后转步骤301。
如图7所示,对直流无刷电机进行消隐处理包括:
步骤401:Timer1定时器根据预设定的定时时间产生定时中断信号;
步骤402:根据Timer1定时器产生的定时中断信号,选择同相相位对应的状态;其中,直流无刷电机是三相电机,每组绕线之间的相位相差120度;在电机的每一相的绕组上都有一个过零检测电路用来检测每一相的反向电动势过零点,三组绕线需要6步换相实现电机旋转,即CommPhase有6六种状态,在电机转动一圈的换相周期内Timer1定时器根据装载的换相定时时间需要产生6次中断,根据当前定时器产生换相中断的次数来确定CommPhase是1-6状态中的哪一种状态;
步骤403:根据同相相位CommPhase对应的状态来设定Timer2定时器的输出参数值,设定恒定输出模式,设定反向电动势检测模块中的比较器输入值,设置反向电动势检测模块过零点电压方向上升/下降标志;其中,根据当前的CommPhase的状态值,确定Timer2定时器中的哪一路PWM输出控制器输出PWM,并开启Timer2的中断,Timer2定时器根据预设速度的装载值来设定PWM输出频率和占空比后恒定输出该频率和占空比的PWM波形去驱动电机转向下一相位;对反向电动势检测模块中比较器的输入值设定为直流无刷电机供电电压VMOTOR的一半,即VMOTOR/2;若反向电动势检测模块检测到反向电动势从VMOTOR逐渐降低,并经过VMOTOR/2时产生过零点电压下降标志,则设置反向电动势检测模块过零点电压方向为下降,若反向电动势从0逐渐增加,并经过VMOTOR/2时,产生过零点电压上升标志,则设置反向电动势检测模块过零点电压方向为上升标志;
步骤404:将当前的同相相位CommPhase对应的状态赋值给下一次同相相位CommPhase,用来计算消隐时间;其中,根据当前的CommPhase状态值确定下一CommPhse的状态值,下一CommPhase=当前的ComPhase+1,若当前ComPhase=6,则下一CommPhase的值为1;两个CommPhse之间的消隐时间为ZC-C;CommPhase的状态值可参考图8所示;
步骤405:将Timer1定时器当前的定时时间减去消隐时间后,将该定时时间赋值给Timer1定时器,重新定时;
步骤406:步骤405中Timer1定时器定时时间到达后,将直流无刷电机换相控制的下一步逻辑状态(NextState)设置为消隐的状态,然后转步骤401重复检测。
如图9所示,该方法还包括根据直流无刷电机的转子速度和转子每相的相电流对直流无刷电机进行闭环反馈控制;其中,根据直流无刷电机的转子速度和转子每相的相电流对直流无刷电机进行闭环反馈控制包括:
步骤501:根据直流无刷电机的定子在上一时刻和当前时刻的电流、定子的电阻值、转子的角速度、定子和转子的电感值和转子的输出电压值建立直流无刷电机的速度控制整体模型;具体为获取直流无刷电机的转子电压状态方程为:
其中i1和i2是定子在上一时刻和当前时刻的电流,R为定子的电阻值,ω1是转子的角速度,L1和L2是定子和转子的电感值,Uo是转子的输出电压值;
步骤502:根据测量到的转子的角速度设计速度PI控制器;具体为根据测量到的ω1设计速度PI控制器,其数学模型为ω=ω0-KP*ω1,其中KP是设计的PI控制的比例参数,ω0是给定的转子角速度,ω1是转子的实际测量反馈的角速度误差;
步骤503:根据速度PI控制器计算出给定的直流无刷电机的驱动电流;具体为根据速度PI控制器后,计算出给定的电机驱动电流I0,其数学模型为其中i1和i2是定子在上一时刻和当前时刻的电流,ω是步骤502计算出来的转子实际控制角速度,Uo是步骤501步骤计算出来的转子电压,R为定子的电阻值,L1和L2是定子和转子的电感值,TS是上一时刻和当前时刻之间的采样时间;
步骤504:根据计算出给定的电流后,设计电流环的PID控制模型;具体为根据计算出给定的电流I0后,设计电流环的PID控制模型,其数学模型为其中Ki为PID控制的比例参数,i1是积分参数,KiTS作为微分参数;
步骤505:根据PID控制电流环,输出控制电流I,用该电流值去调整Timer2定时器PWM的输出脉宽及频率,实现对直流无刷电机的速度闭环控制。
采用闭环积分比例控制消除驱动误差,具有时序自校正的功能,实现最优的电机转矩输出,通过对直流无刷电机(BLDC)的电压和电流检测,结合PI、PID控制器对电机的速度进行闭环控制,实现推进器速度的精确控制,从而使水下机器人在复杂的海洋环境中实现高精度动力定位,使水下机器人在水下可以平稳、高效、准确的控制位置。
根据本发明的第二个方面,图10示意性地显示了根据本发明的一种实施方式的一种水下机器人推进器控制***。如图10所示,该一种水下机器人推进器控制***实现上述的一种水下机器人推进器控制方法,其包括中点误差补偿模块100、Timer1定时器200(Timer1换相事件)、Timer2定时器300(Timer2)和直流无刷电机控制模块400;中点误差补偿模块100根据直流无刷电机(BLDC)的反向电动势过零点时刻和Timer1定时器200预设的期望换相时刻溢出时刻计算中点误差,并通过直流无刷电机的换相时间对中点误差进行补偿;Timer1定时器200根据中点误差对换相进行判断确定是产生换相事件还是产生对直流无刷电机进行消隐处理事件,并根据不同事件产生第一PWM调节信号;Timer2定时器300根据期望的转动速度产生预期脉宽计数周期和占空比的第二PWM调节信号;直流无刷电机控制模块400根据第一PWM调节信号、第二PWM调节信号对直流无刷电机进行对应的联合控制。
中点误差补偿模块100包括:反向电动势检测模块(BEMF检测电路)、复用比较器、计算中点误差模块、PI控制模块(PI控制)和计算换相时间模块(计算换相时间);反向电动势检测模块对直流无刷电机的反向电动势进行过零检测;复用比较器用于将反向电动势检测模块检测到的检测结果和Timer1定时器的换相定时中断事件结果进行比较;计算中点误差模块根据复用比较器的比较结果进行中点误差计算;PI控制模块用于将中点误差进行比例积分换算;计算换相时间模块计算直流无刷电机的换相时间,并将换相时间对中点误差进行补偿。
直流无刷电机控制模块包括换相和速度计算模块(ECCP PWM)、可控PWM输出模块(可控PWM输出)和电机驱动器;换相和速度计算模块根据直流无刷电机转速和换相所需时间产生第二PWM调节信号;可控PWM输出模块根据第一PWM调节信号和第二PWM调节信号产生控制直流无刷电机的PWM驱动信号;电机驱动器根据PWM驱动信号驱动直流无刷电机。
以上所述的仅是本发明的一些实施方式。对于本领域的普通技术人员来说,在不脱离本发明创造构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
Claims (9)
1.一种水下机器人推进器控制方法,其特征在于,包括:
步骤100:根据直流无刷电机的反向电动势过零点时刻和Timer1定时器预设的期望换相时刻溢出时刻计算中点误差,并通过所述直流无刷电机的换相时间对所述中点误差进行补偿;步骤100包括:
步骤101:初始时所述Timer1定时器预先设置为在期望换相时刻溢出时刻;
步骤102:反向电动势检测模块检测所述直流无刷电机的反向电动势过零点时刻,计算出过零时刻到下一次换相之间的时间,将过零时刻对应的计算值读入所述Timer1定时器,并将所述Timer1定时器中对应过零时刻的读入值和所述Timer1定时器中对应期望换相时刻溢出时刻的计数值之间的误差用来调整下一个周期的所述Timer1定时器的预设值,所述Timer1定时器在期望换相时刻溢出时刻至下一次换相时间对所述直流无刷电机驱动相位进行消隐操作;
步骤103:所述Timer1定时器根据前一次过零误差调整下一个周期的换相时间,所述Timer1定时器进行复位并在距离当前时刻之后的1/2换相时间处溢出;
步骤104:所述反向电动势检测模块再一次检测到过零时刻后,与预期的过零时间进行误差计算,将该次的过零误差用来调整下一个换相周期;
步骤105:所述Timer1定时器进行复位并在距离当前时刻之后的1/2换相时间处溢出,然后转步骤101;
步骤200:Timer1定时器根据所述中点误差对换相进行判断确定是产生换相事件还是产生对所述直流无刷电机进行消隐处理事件,并根据不同事件产生第一PWM调节信号;
步骤300:Timer2定时器根据期望的转动速度产生预期脉宽计数周期和占空比的第二PWM调节信号;
步骤400:根据所述第一PWM调节信号、所述第二PWM调节信号对所述直流无刷电机进行对应的联合控制。
2.根据权利要求1所述的一种水下机器人推进器控制方法,其特征在于,对所述直流无刷电机进行对应的联合控制包括根据所述Timer1的定时时间结合直流无刷电机转动的死区时间、同相时间联合控制换相;其包括:
步骤201:所述Timer1定时器根据初始时所述Timer1定时器预先设置的定时时间,产生溢出中断信号,所述Timer1定时器根据检测到所述直流无刷电机的死区时间和同相时间计算出所述Timer1定时器需要重新装载的参数值;
步骤202:所述反向电动势检测模块对反向电动势经过零点电压的方向进行判断,若是上升方向则转步骤203,否则转步骤204;
步骤203:将所述直流无刷电机换相控制的下一步逻辑状态设置为过零点状态,然后转步骤201;
步骤204:将所述直流无刷电机换相控制的下一步逻辑状态设置为换相状态,改变所述直流无刷电机的驱动器的驱动逻辑,让所述直流无刷电机进行换相后转步骤201。
3.根据权利要求1-2任一项所述的一种水下机器人推进器控制方法,其特征在于,检测所述直流无刷电机的反向电动势过零点时刻包括:
步骤301:所述反向电动势检测模块的比较器产生中断,所述Timer1定时器根据比较器的中断信号记录当前时间;
步骤302:根据同相时间和当前时间计算换相误差时间;
步骤303:对计算的误差进行判断,判断误差的绝对值是否小于同相时间的1/8,若是误差绝对值小于同相时间的1/8,则转步骤304,否则转步骤305;
步骤304:将反向电动势过零检测锁定逻辑的状态值设置为真,然后转步骤306;
步骤305:将反向电动势过零检测锁定逻辑的状态值设置为假,然后转步骤306;
步骤306:所述Timer1定时器更新当前的计数时间为负的同相时间的1/2;
步骤307:更新当前的同相时间,当前的同相时间等于之前的同相时间加上四分之一误差时间;
步骤308:将所述直流无刷电机换相控制的下一步逻辑状态设置为换相的状态,同时改变所述直流无刷电机的驱动器的驱动逻辑,让所述直流无刷电机进行换相后转步骤301。
4.根据权利要求1-2任一项所述的一种水下机器人推进器控制方法,其特征在于,所述对直流无刷电机进行消隐处理包括:
步骤401:所述Timer1定时器根据预设定的定时时间产生定时中断信号;
步骤402:根据所述Timer1定时器产生的定时中断信号,选择同相相位对应的状态;
步骤403:根据同相相位对应的状态来设定所述Timer2定时器的输出参数值,设定恒定输出模式,设定所述反向电动势检测模块中的比较器输入值,设置所述反向电动势检测模块过零点电压方向上升/下降标志;
步骤404:将当前的同相相位对应的状态赋值给下一次同相相位,用来计算消隐时间;
步骤405:将所述Timer1定时器当前的定时时间减去消隐时间后,将该定时时间赋值给所述Timer1定时器,重新定时;
步骤406:步骤405中所述Timer1定时器定时时间到达后,将所述直流无刷电机换相控制的下一步逻辑状态设置为消隐的状态,然后转步骤401重复检测。
5.根据权利要求1-2任一项所述的一种水下机器人推进器控制方法,其特征在于,还包括根据所述直流无刷电机的转子速度和转子每相的相电流对直流无刷电机进行闭环反馈控制。
6.根据权利要求5所述的一种水下机器人推进器控制方法,其特征在于,根据所述直流无刷电机的转子速度和转子每相的相电流对直流无刷电机进行闭环反馈控制包括:
步骤501:根据所述直流无刷电机的定子在上一时刻和当前时刻的电流、定子的电阻值、转子的角速度、定子和转子的电感值和转子的输出电压值建立所述直流无刷电机的速度控制整体模型;
步骤502:根据测量到的转子的角速度设计速度PI控制器;
步骤503:根据所述速度PI控制器计算出给定的所述直流无刷电机的驱动电流;
步骤504:根据计算出给定的电流后,设计电流环的PID控制模型;
步骤505:根据PID控制电流环,输出控制电流,用该电流值去调整所述Timer2定时器PWM的输出脉宽及频率,实现对所述直流无刷电机的速度闭环控制。
7.一种水下机器人推进器控制***,用于实现权利要求1-6任一项所述的一种水下机器人推进器控制方法,其特征在于,包括:中点误差补偿模块、Timer1定时器、Timer2定时器和直流无刷电机控制模块;
所述中点误差补偿模块根据直流无刷电机的反向电动势过零点时刻和所述Timer1定时器预设的期望换相时刻溢出时刻计算中点误差,并通过所述直流无刷电机的换相时间对所述中点误差进行补偿;包括:
初始时所述Timer1定时器预先设置为在期望换相时刻溢出时刻;
反向电动势检测模块检测所述直流无刷电机的反向电动势过零点时刻,计算出过零时刻到下一次换相之间的时间,将过零时刻对应的计算值读入所述Timer1定时器,并将所述Timer1定时器中对应过零时刻的读入值和所述Timer1定时器中对应期望换相时刻溢出时刻的计数值之间的误差用来调整下一个周期的所述Timer1定时器的预设值,所述Timer1定时器在期望换相时刻溢出时刻至下一次换相时间对所述直流无刷电机驱动相位进行消隐操作;
所述Timer1定时器根据前一次过零误差调整下一个周期的换相时间,所述Timer1定时器进行复位并在距离当前时刻之后的1/2换相时间处溢出;
所述反向电动势检测模块再一次检测到过零时刻后,与预期的过零时间进行误差计算,将该次的过零误差用来调整下一个换相周期;
所述Timer1定时器进行复位并在距离当前时刻之后的1/2换相时间处溢出,然后转初始时所述Timer1定时器预先设置为在期望换相时刻溢出时刻;
所述Timer1定时器根据所述中点误差对换相进行判断确定是产生换相事件还是产生对所述直流无刷电机进行消隐处理事件,并根据不同事件产生第一PWM调节信号;
所述Timer2定时器根据期望的转动速度产生预期脉宽计数周期和占空比的第二PWM调节信号;
所述直流无刷电机控制模块根据所述第一PWM调节信号、所述第二PWM调节信号对所述直流无刷电机进行对应的联合控制。
8.根据权利要求7所述的一种水下机器人推进器控制***,其特征在于,所述中点误差补偿模块包括:反向电动势检测模块、复用比较器、计算中点误差模块、PI控制模块和计算换相时间模块;
所述反向电动势检测模块对所述直流无刷电机的反向电动势进行过零检测;
所述复用比较器用于将所述反向电动势检测模块检测到的检测结果和所述Timer1定时器的换相定时中断事件结果进行比较;
所述计算中点误差模块根据所述复用比较器的比较结果进行所述中点误差计算;
所述PI控制模块用于将所述中点误差进行比例积分换算;
所述计算换相时间模块计算所述直流无刷电机的换相时间,并将所述换相时间对所述中点误差进行补偿。
9.根据权利要求7所述的一种水下机器人推进器控制***,其特征在于,所述直流无刷电机控制模块包括换相和速度计算模块、可控PWM输出模块和电机驱动器;
所述换相和速度计算模块根据所述直流无刷电机转速和换相所需时间产生第二PWM调节信号;
所述可控PWM输出模块根据所述第一PWM调节信号和所述第二PWM调节信号产生控制所述直流无刷电机的PWM驱动信号;
所述电机驱动器根据所述PWM驱动信号驱动所述直流无刷电机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210597339.9A CN114954882B (zh) | 2022-05-27 | 2022-05-27 | 一种水下机器人推进器控制***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210597339.9A CN114954882B (zh) | 2022-05-27 | 2022-05-27 | 一种水下机器人推进器控制***及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114954882A CN114954882A (zh) | 2022-08-30 |
CN114954882B true CN114954882B (zh) | 2024-01-16 |
Family
ID=82957654
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210597339.9A Active CN114954882B (zh) | 2022-05-27 | 2022-05-27 | 一种水下机器人推进器控制***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114954882B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115446876B (zh) * | 2022-09-19 | 2023-05-02 | 广东智能无人***研究院(南沙) | 一种深海机械手多维力感知***及方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5245256A (en) * | 1991-02-15 | 1993-09-14 | Seagate Technology, Inc. | Closed loop control of a brushless DC motor at nominal speed |
KR20110072143A (ko) * | 2009-12-22 | 2011-06-29 | 부산대학교 산학협력단 | 위치 센서 없는 브러시리스 직류 모터의 운전 장치 및 방법 |
CN103580558A (zh) * | 2012-08-10 | 2014-02-12 | 金华英科尔电机有限公司 | 一种基于直流无刷电机相电流相位角的控制装置及方法 |
KR20150031356A (ko) * | 2013-09-13 | 2015-03-24 | 계양전기 주식회사 | Bldc 모터 제어 시스템에서 역기전력의 제로 크로싱 지점 판단 기준전압 보상 장치 및 방법 |
CN105391364A (zh) * | 2015-11-24 | 2016-03-09 | 哈尔滨理工大学 | 一种无刷直流电机无位置传感器控制***及控制方法 |
CN107222135A (zh) * | 2017-05-12 | 2017-09-29 | 哈尔滨工程大学 | 一种直流无刷电机无位置传感器控制***换相控制方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7183734B2 (en) * | 2005-02-18 | 2007-02-27 | Atmel Corporation | Sensorless control of two-phase brushless DC motor |
-
2022
- 2022-05-27 CN CN202210597339.9A patent/CN114954882B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5245256A (en) * | 1991-02-15 | 1993-09-14 | Seagate Technology, Inc. | Closed loop control of a brushless DC motor at nominal speed |
KR20110072143A (ko) * | 2009-12-22 | 2011-06-29 | 부산대학교 산학협력단 | 위치 센서 없는 브러시리스 직류 모터의 운전 장치 및 방법 |
CN103580558A (zh) * | 2012-08-10 | 2014-02-12 | 金华英科尔电机有限公司 | 一种基于直流无刷电机相电流相位角的控制装置及方法 |
KR20150031356A (ko) * | 2013-09-13 | 2015-03-24 | 계양전기 주식회사 | Bldc 모터 제어 시스템에서 역기전력의 제로 크로싱 지점 판단 기준전압 보상 장치 및 방법 |
CN105391364A (zh) * | 2015-11-24 | 2016-03-09 | 哈尔滨理工大学 | 一种无刷直流电机无位置传感器控制***及控制方法 |
CN107222135A (zh) * | 2017-05-12 | 2017-09-29 | 哈尔滨工程大学 | 一种直流无刷电机无位置传感器控制***换相控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114954882A (zh) | 2022-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5250979B2 (ja) | 電動パワーステアリング装置の制御装置 | |
US7423397B2 (en) | Electric power steering device | |
KR101255931B1 (ko) | 모터 제어 장치 | |
CN104579045B (zh) | 一种基于角度传感器的无刷直流电机的换相方法 | |
US4761598A (en) | Torque-angle stabilized servo motor drive | |
JP5510842B2 (ja) | 3相モータ制御装置、3相モータシステム、3相モータ制御方法及びプログラム | |
CN114954882B (zh) | 一种水下机器人推进器控制***及方法 | |
WO2005002036A2 (en) | Position sensorless control algorithm for ac machine | |
JPH08182398A (ja) | 永久磁石形同期電動機の駆動装置 | |
CN108448979B (zh) | 一种基于磁编码器误差神经网络补偿的永磁同步电机*** | |
EP1417747B1 (en) | Method and apparatus for high performance permanent magnet motor speed control with limited position information | |
JP2019103382A (ja) | モーター制御方法 | |
CN108649850B (zh) | Ude的内置式永磁同步电机电流控制方法 | |
JP2008099369A (ja) | モータ制御装置 | |
JPH09215382A (ja) | 永久磁石同期モータの駆動方法 | |
KR101725770B1 (ko) | Bldc모터 제어장치 및 제어방법 | |
JP2004320847A (ja) | ステッピングモータ制御方法とステッピングモータ制御装置 | |
JP2004274855A (ja) | ローター位置検出調整方法及びローター位置検出調整装置 | |
CN115603620A (zh) | 基于最优线性二次型整定算法的粒料3d打印喷嘴驱动器 | |
JP2002315389A (ja) | 電動機制御装置 | |
CN113141136B (zh) | 一种基于离散超螺旋滑模算法的永磁同步电机控制*** | |
JPH0586156B2 (zh) | ||
CN112636653A (zh) | 一种汽车电子水泵永磁同步电机的无感控制电路及方法 | |
JPH05336789A (ja) | モータの制御方式 | |
CN111064396A (zh) | 基于虚拟中性点电压的无刷直流电机功率因数校正方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |