123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- /******************** (C) COPYRIGHT 2008 STMicroelectronics ********************
- * File Name : MC_PID_regulators.h
- * Author : IMS Systems Lab
- * Date First Issued : 21/11/07
- * Description : Contains the prototypes of PI(D) related functions.
- *
- ********************************************************************************
- * History:
- * 21/11/07 v1.0
- * 29/05/08 v2.0
- ********************************************************************************
- * THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
- * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
- * AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
- * INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
- * CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
- * INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
- *
- * THIS SOURCE CODE IS PROTECTED BY A LICENSE.
- * FOR MORE INFORMATION PLEASE CAREFULLY READ THE LICENSE AGREEMENT FILE LOCATED
- * IN THE ROOT DIRECTORY OF THIS FIRMWARE PACKAGE.
- *******************************************************************************/
- /* Define to prevent recursive inclusion -------------------------------------*/
-
- #ifndef __PI_REGULATORS__H
- #define __PI_REGULATORS__H
- /* Includes ------------------------------------------------------------------*/
- #include "stm32f1xx_hal.h"
- typedef struct
- {
- int16_t hKp_Gain; //比例系数
- uint16_t hKp_Divisor; //比例系数因子
- int16_t hKi_Gain; //积分系数
- uint16_t hKi_Divisor; //积分系数因子
- int16_t hKd_Gain; //微分系数
- uint16_t hKd_Divisor; //微分系数因子
- int32_t wPreviousError; //上次误差
- int32_t hLower_Limit_Output; //Lower Limit for Output limitation 总输出下限
- int32_t hUpper_Limit_Output; //Upper Limit for Output limitation 总输出上限
- int32_t wLower_Limit_Integral; //Lower Limit for Integral term limitation 积分项下限
- int32_t wUpper_Limit_Integral; //Upper Limit for Integral term limitation 积分项上限
- int32_t wIntegral; //积分累积和
- } PID_Struct_t;
- extern PID_Struct_t PID_IMax;
- extern PID_Struct_t PID_Weak_InitStructure;
- extern PID_Struct_t PID_Torque_InitStructure;
- extern PID_Struct_t PID_Flux_InitStructure;
- extern PID_Struct_t PID_MotorSpd;
- extern PID_Struct_t PID_ConstantPower;
- extern void PID_Init (uint8_t SerialNum);
- extern int16_t PID_Regulator(int16_t, int16_t, PID_Struct_t *);
- #endif
- /******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/
|