motorcontroldemo_035/Vinclude/build.h
Dmitry Shpak a99491f9b8 Основные обновления в данном коммите:
- проект переведён на VectorIDE v1.3

В целях экономии памяти удалены:
 - модуль управления светодиодами
 - модуль ШИМ для двигателей SRD
 - модуль часов реального времени
 - режим привода для измерения задержки меджу сигналами ШИМ и измерениями токов

Добавлены следующие модули:
 - проект переведён на VectorIDE v1.3
 - модуль SPI для абсолютного ДПР
 - модуль управление реле для заряда ЗПТ
 - модуль дискретных вводов-выводов
 - модуль управления вентилятором Одноплатного Инвертора
 - модуль тормозного резистора Одноплатного Инвертора

Прочие изменения:
 - оптимизирована инициализация регистров периферии
 - удалено множество неиспользуемых переменных
 - разрешение работы всех GPIO перенесено в функцию "PeripheralClockEnable"
 - добавлен счётчик индексной метки энкодера
 - исправлен сброс прерываний модуля захвата CAP
 - переработан режим задания постоянного тока статора
- исправлены прочие мелкие ошибки в разных модулях
2021-12-01 13:54:14 +03:00

117 lines
3.6 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
//Âûáîð òèïà àïïàðàòíîé ÷àñòè
#define HW_MOTORCONTROLBOARD
//Äëÿ 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
//Ôëàãè àâàðèé äëÿ ìîäóëÿ çàùèò
//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_RELAY_START 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)
/*@}*/