Как понять, что ось двигателя больше не крутится ЭПС-4+VNH2SP30?
- Войдите на сайт для отправки комментариев
Доброго времни суток, коллеги!
Для своего проекта использую драйвер Н-моста на базе VNH2SP30
Подключил к нему мотор от стелоподъемника ЛАДА. Соединил, написал простой скейтч все работает, крутится в любую сторону по желанию, с желаемым значением ШИМ. Питается от истояника 12В 15А.
int ENA = 12; // Clockwise int ENB = 13; // Counter-clockwise int PWM = 10; // PWM input int CS = A0; //CS: Current sense ANALOG input void setup() { Serial.begin(9600); pinMode(CS, INPUT); pinMode(ENA, OUTPUT); pinMode(ENB, OUTPUT); pinMode(PWM, OUTPUT); // тут сразу стартуем мотор на полную go_forward(255); } void loop() { Serial.println(analogRead(CS)); delay(500); } void go_forward(byte spd) { analogWrite(PWM, spd); digitalWrite(ENA, 1); digitalWrite(ENB, 0); } void go_backward(byte spd) { analogWrite(PWM, spd); digitalWrite(ENA, 0); digitalWrite(ENB, 1); }
Есть задача, если мотор на полном заначении ШИМ встал (уперся в то, что уже не крутится по превышению механической составляющей) то он начинает потреблять больше тока, разумеется (ток примерно 7А через него пробегает в это время, в не нагруженном состоянии около 1.5А). У данного драйвера есть пин CS, (current sense) не могу разобраться как правильно считать с него данные. Получается что если стопорнуть мотор и получить с него analogRead, то значение переменной, захваченной, с А0 не превышает 120.
Либо я что то не понимаю, либо одно из двух. Задача простая - Запустил мотор, ждешь пока не упрется (упрется по-любому), и потом отматываешь назад пока вся напраляющая не доедет до концевика сверху..
А какие еще способы есть, для того, чтобы понять встал ли мотор, кроме замера по току?
Подумал, может вткнуть туда простенький энкодер и если в момент движения мотора, данные с него не обновляются, значит что то пошло не так и пора крутить назад...
Благодарю. Буду рад любой помощи.
Датчик Холла
а вообще гугл знает кучу библиотек . Рубят питание по перегрузке
напрмер
https://www.sparkfun.com/products/10182
Датчик холла, для энкодера или для получения наводки с провода при перегрузе ?
Вот, что нашел в прошивке (код адаптировал) по линку, что вы мне дали. Видел его ранее, но как то этот момент пропустил за ненадобностью.. а когда понадобился не вспонил где его искать. Благодарю за линк.
Получается, если доходит до 100 (что у меня и получается) то нужно либо останавливать, как у них в коде, либо вертать все назад.
Благодарю.
драйвер в обе стороны с одинаковой мощностью мотор крутит? у меня 2 драйвера, в одну хорошо крутит, в другую мощность сильно падает