118 lines
3.7 KiB
C
118 lines
3.7 KiB
C
/*!
|
||
Copyright 2017 АО "НИИЭТ" и ООО "НПФ ВЕКТОР"
|
||
|
||
Licensed under the Apache License, Version 2.0 (the "License");
|
||
you may not use this file except in compliance with the License.
|
||
You may obtain a copy of the License at
|
||
|
||
http://www.apache.org/licenses/LICENSE-2.0
|
||
|
||
Unless required by applicable law or agreed to in writing, software
|
||
distributed under the License is distributed on an "AS IS" BASIS,
|
||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
See the License for the specific language governing permissions and
|
||
limitations under the License.
|
||
|
||
\file build.h
|
||
\brief Конфигурационный заголовочный файл
|
||
Содержит глобальные макроопределения, используемые во всем проекте.
|
||
\author ООО "НПФ Вектор". http://motorcontrol.ru
|
||
\version v 3.0 30/05/2017
|
||
|
||
@{
|
||
*/
|
||
|
||
// Разрешить сторожевой таймер
|
||
//#define WATCHDOG_ON
|
||
//Выбор типа аппаратной части
|
||
|
||
//Для UART, выбирается чем его занять - MODBUS или CANtoRS драйвером
|
||
//#define MODBUS_ENA
|
||
#define CANTORS_ENA
|
||
|
||
// Также можно задействовать USB для CANopen
|
||
#define CANTOUSB_ENA
|
||
|
||
//!Режимы работы (состояния ДА sm_ctrl)
|
||
//! Режим останов
|
||
#define CTRL_STOP 0
|
||
//! Режим запуска (включение ШИМ, переход в другой желаемый режим работы)
|
||
#define CTRL_RUN 1
|
||
//! Режим намагничивание (постоянный ток), работает контур тока
|
||
#define CTRL_FLUXING 2
|
||
//! Режим скалярного управления по кривой U(f) без контуров тока
|
||
#define CTRL_RUN_U2F 3
|
||
//! Режим вращения вектора тока
|
||
#define CTRL_RUN_I2F 4
|
||
//! Векторная структура управления двухконтурная с датчиком для синхронной машины
|
||
#define CTRL_RUN_VECTOR_SM 5
|
||
//! Векторная структура управления с энкодером и с контуром положения для синхронной машины
|
||
#define CTRL_RUN_VECTOR_SM_ENCODER_POS 10
|
||
|
||
//! Векторное управление для асинхронного двигателя с энкодером.
|
||
#define CTRL_RUN_VECTOR_IM_ENCODER 55
|
||
|
||
//! Режим калибровки датчика положения
|
||
#define CTRL_AUTO_SENSOR_TUNING 29
|
||
|
||
//! Режим автокоммутации для SRM
|
||
#define CTRL_RUN_SRM_AUTOCOMMUTATION 101
|
||
|
||
//! Режим измерения задержки между ШИМ и датчиками тока
|
||
#define CTRL_RUN_LATENCY_TEST 31
|
||
|
||
|
||
|
||
|
||
//Флаги аварий для модуля защит
|
||
|
||
//bit_fault1
|
||
#define F_CTRL_LOW_UDC 0x1
|
||
#define F_CTRL_HI_UDC 0x2
|
||
#define F_ENCODER_FAULT 0x4
|
||
#define F_MODEL_FAULT 0x8
|
||
#define F_FLASH_PROGRAM 0x10
|
||
//#define F_RESERVED 0x20
|
||
//#define F_RESERVED 0x40
|
||
//#define F_RESERVED 0x80
|
||
#define F_PROGRAM_1K 0x100
|
||
#define F_PROGRAM_10K 0x200
|
||
#define F_PROGRAM_40K 0x400
|
||
//#define F_RESERVED 0x800
|
||
#define F_PDPINT 0x1000
|
||
//#define F_RESERVED 0x2000
|
||
//#define F_RESERVED 0x4000
|
||
//#define F_RESERVED 0x8000
|
||
|
||
//bit_fault2
|
||
//#define F_RESERVED 0x1
|
||
//#define F_RESERVED 0x2
|
||
//#define F_RESERVED 0x4
|
||
//#define F_RESERVED 0x8
|
||
#define F_CTRL_MAX_I_PH_A 0x10
|
||
#define F_CTRL_MAX_I_PH_B 0x20
|
||
#define F_CTRL_MAX_I_PH_C 0x40
|
||
//#define F_RESERVED 0x80
|
||
//#define F_RESERVED 0x100
|
||
#define F_CTRL_SPEED_MAX 0x200
|
||
//#define F_RESERVED 0x400
|
||
//#define F_RESERVED 0x800
|
||
//#define F_RESERVED 0x1000
|
||
//#define F_RESERVED 0x2000
|
||
//#define F_RESERVED 0x4000
|
||
//#define F_RESERVED 0x8000
|
||
|
||
|
||
#define POS_SENSOR_TYPE_NO_SENSOR 0
|
||
#define POS_SENSOR_TYPE_ENCODER 1
|
||
#define POS_SENSOR_TYPE_HALL 2
|
||
#define POS_SENSOR_TYPE_ENC_HALL 3
|
||
#define POS_SENSOR_TYPE_SSI 4
|
||
#define POS_SENSOR_TYPE_SENSORLESS 5
|
||
|
||
//!Время дискретизации быстрого расчета (прерывание, которое обычно 10кГц)
|
||
#define FAST_CALC_TS _IQ(0.0001)
|
||
|
||
|
||
/*@}*/
|