Jump to content
boogiemen

Кто может помочь трактористу подправить прошивку?)

Recommended Posts

Здравствуйте товарищи) Я совсем далёк от программирования и МК) Мне очень нужен грамотный человек, который легко может изменить пару строк в прошивке) Объясню ситуацию, есть схема: два входа, два реле на выходе, МК PIC при появлении импульса на одном входе реле начинают вращать двигатель в одну сторону и останавливает мотор через 30 сек или по шуму, и второй вход выполняет тот же алгоритм, но вращает двигатель в другую сторону. По типу доводчиков стекол на авто. Так вот схема была взята с другого похожего устройства, добавлено управление по шуму и надо теперь в прошивке это дописать или изменить)  Помогите, очень надо))

схема.JPG

Прошивка main.hex

Share this post


Link to post
Share on other sites
48 минут назад, boogiemen сказал:

добавлено управление по шуму и надо теперь в прошивке это дописать или изменить)

Это у Вас называется - пару строк ? :blink:

Да ещё и исходника нет...


 

Share this post


Link to post
Share on other sites

Wolfspeed раскрывает секреты прорывных технологий в силовой электронике

Компания Wolfspeed предлагает разработчикам стать частью новой истории и проверить самостоятельно все преимущества компонентов с широкой запрещённой зоной. Представляем вашему вниманию подборку материалов по теме SiC MOSFET, SiC-диодов и их применениям.

Подробнее

Если управление "по шуму" это датчик тока двигателя (как мне кажется) то проще дергать Reset микроконтроллера и переделка прошивки не понадобится

Share this post


Link to post
Share on other sites

Пружинные клеммники Degson - высокое качество соединения по оптимальной цене!

Пружинные клеммные блоки Degson для монтажа на печатную плату – это простое и надежное соединение, которое позволяет легко решать задачи для различных приложений за счет обширного ассортимента. Клеммники Degson доступны в двух конструктивных исполнениях (торцевой контакт и зажимная клеть), имеют различные направления ввода проводника (45°, 90°, 180°) и обладают широким диапазоном поперечных сечений (0,2…2,5 мм2).

Подробнее

По прошивке тоже можно, но будет очень дорого ибо очень многие человеко-часы, проще будет написать исходник с нуля.

И второе замечание большой электролит на ВЫХОДЕ стабилизатора - смерть схеме! Сначала стабилизатору а потом схеме, а может ещё и в процессе работы настигнет... спасает только то что обычно в схему достают дешёвые не сильно хорошие стабилизаторы с маленьким усилением, у них и переходные процессы поскромнее... Можете считать чудом что данная схема у вас работает какое-то время, в любой момент может выбить или контроллер в момент включения реле из-за перенапряжения в результате переходного процесса, либо стабилизатор выбъет при отключении схемы обратным напряжением. Лучше электролит поставить побольше на входе, кроме перечисленных проблем на выходе он ещё и бесполезен. На место 1000мкф максимум что можно поставить это 1..10мкф электролит(шунтирующие на 100нф убирать не надо, там они на месте), и то при необходимости.

И кстати, двигатель подключить ДО диода напрямую к источнику - незачем диод греть огромными токами с риском его вышибить пусковыми токами и при блокировке вала двигателя.

А, еще защита входа операционника... в момент пуска по ТТ пойдёт большой импульс напряжения, он запросто выбъет вход операционника - нужна защита стабилитроном/супрессором.

Edited by Alexeyslav

Учение - изучение правил. Опыт - изучение исключений.

Share this post


Link to post
Share on other sites

BlueNRG-LP для передачи данных в диапазоне 2,4 ГГц без BLE

В статье представлен набор базовых примеров основных аспектов работы радиотракта в проприетарном режиме, что позволяет создавать на их основе собственные более сложные проекты. Описан режим обновления и типичный сценарий прошивки «по воздуху» OTA для проприетарного режима. Примеры приведены для сред разработки IAR Embedded Workbench for ARM и KEIL uVision 5 for ARM.

Подробнее

+ незачем лишний ток гнать через контакты реле; для изменения полярности достаточно включать одно реле.


Я не раздаю удочки. Я продаю рыбу.

Share this post


Link to post
Share on other sites

Простите, но я абсолютно неграмотен в данных вопросах) Я предоставил схему, собранную из готовой и плюс мои нужды) Работоспособность её не проверялась, т.к. нужна прошивка) Исходник прикрепил и также исходную схему, которая работала, но не все функции выполняет. В прошивке изменения должны коснуться только входа GP0, остальной принцип работы схемы меня полностью устраивает). Спасибо, как же вы всё грамотно излагаете) Я сижу, читаю и просто киваю на ваши замечания)))

исходник.txt

post-343-1314774667.jpg

Edited by boogiemen

Share this post


Link to post
Share on other sites

С подобным вопросом - в раздел работа и писать нужно с "0" ... вопрос стоимости и целесообразности - сразу отпадет.

Share this post


Link to post
Share on other sites

В функциях Open и Close вместо

delay_ms(TIME)

вставьте

//******************* вставка*********************************************
    for(count= 0; count < TIME; ++count)
        {
        delay_ms(1);              // Wait TIME mseconds
        if(Rotate) return;
        }
//************************************************************************


Это:

       if(!Rotate){               // If Rotate is pressed
         delay_ms(50);
         if(!Rotate)
           switch(Pos){             // Look in Pos to decide
             case 0:                // to Open
                  Open();           //
                  break;            // and get out of switch
             case 1:                // or to Close
                  Close();
                  break;            // and get out of switch
             default:               // by default
                  break;            // do nothing
           }
       }

уберите.

При включении двигателя будет бросок тока, который даст ложную команду на отключение. Это можно обойти временнОй задержкой перед вызовом функций Open и Close.


Я не раздаю удочки. Я продаю рыбу.

Share this post


Link to post
Share on other sites

Это я попробую исправить) А как насчёт входа GP0 ? В прошивке же надо дописать процедуру, которая будет отключать МК когда сработает остановка по шуму двигателя? Или я опять что-то не понимаю?) Спасибо)

исходник2.txt

Edited by boogiemen

Share this post


Link to post
Share on other sites

Что такое шум двигателя? Схема несколько странная, трансформатор включен как трансформатор тока, но с ДПТ это весьма странное решение - постоянный ток через трансформатор не пойдёт, и кроме того ТТ в обязательном порядке имеет во вторичной обмотке нагрузку, иначе там сотни вольт будут. Решение очень сомнительное, лучше всего использовать токовое реле - геркон обмотанный парой витков провода (4-5 витков и геркон замыкается уже при 200-300 мА) может даже с шунтом чтобы увеличить ток срабатывания.
Или надо реагировать даже на небольшие изменения нагрузки двигателя?


Учение - изучение правил. Опыт - изучение исключений.

Share this post


Link to post
Share on other sites
В 28.11.2016 в 22:21, boogiemen сказал:

По типу доводчиков стекол на авто

Видимо, имеется ввиду бросок тока при достижении механизмом конечного положения. Именно его и должен регистрировать трансформатор тока с операционником. Но следует иметь ввиду и то, что этот бросок тока будет и в момент старта.

 

14 часа назад, boogiemen сказал:

насчёт входа GP0

Это и есть Rotate. Раньше это была кнопка (выкидываем её обработку). Теперь это вход датчика (его и обслуживаем).


Я не раздаю удочки. Я продаю рыбу.

Share this post


Link to post
Share on other sites
9 часов назад, Alexeyslav сказал:

Что такое шум двигателя? Схема несколько странная, трансформатор включен как трансформатор тока, но с ДПТ это весьма странное решение - постоянный ток через трансформатор не пойдёт, и кроме того ТТ в обязательном порядке имеет во вторичной обмотке нагрузку, иначе там сотни вольт будут. Решение очень сомнительное, лучше всего использовать токовое реле - геркон обмотанный парой витков провода (4-5 витков и геркон замыкается уже при 200-300 мА) может даже с шунтом чтобы увеличить ток срабатывания.
Или надо реагировать даже на небольшие изменения нагрузки двигателя?

Нет, Солар правильно заметил:

 

1 час назад, солар сказал:

Видимо, имеется ввиду бросок тока при достижении механизмом конечного положения. Именно его и должен регистрировать трансформатор тока с операционником. Но следует иметь ввиду и то, что этот бросок тока будет и в момент старта.

 

1 час назад, солар сказал:

Видимо, имеется ввиду бросок тока при достижении механизмом конечного положения. Именно его и должен регистрировать трансформатор тока с операционником. Но следует иметь ввиду и то, что этот бросок тока будет и в момент старта.

 

Это и есть Rotate. Раньше это была кнопка (выкидываем её обработку). Теперь это вход датчика (его и обслуживаем).

А исходник2 верно изменён?) Это уже конец?) 

Share this post


Link to post
Share on other sites

Конечно, не конец, только начало. Как известно, любая программа требует отладки. Причём с исправным железом, т.е. схемой.

Плюс к тому исходная схема (та, что с кнопкой Rotate) и программа имеет логику работы такую, что исходник нужно и в этом направлении переработать.


Я не раздаю удочки. Я продаю рыбу.

Share this post


Link to post
Share on other sites

Подтяжка на GP0 всю малину вам испортит, схема просто не будет работать - там всегда будет лог.1 независимо от тока на датчике. Второе, как уже говорил - электролит после стабилизатора убрать! Он там бесполезен и даже вредит, может оказаться причиной выгорания схемы когда стабилизатор вдруг уйдёт в самовозбуд.

Ну и третье - геркон с парой витков провода вокруг за датчик тока не сойдет? Тогда схема очень сильно похудеет, а время срабатывания геркона - 1мс, что заведомо выше любых требований.


Учение - изучение правил. Опыт - изучение исключений.

Share this post


Link to post
Share on other sites
21 минуту назад, Alexeyslav сказал:

Подтяжка на GP0 всю малину вам испортит, схема просто не будет работать - там всегда будет лог.1 независимо от тока на датчике. Второе, как уже говорил - электролит после стабилизатора убрать! Он там бесполезен и даже вредит, может оказаться причиной выгорания схемы когда стабилизатор вдруг уйдёт в самовозбуд.

Ну и третье - геркон с парой витков провода вокруг за датчик тока не сойдет? Тогда схема очень сильно похудеет, а время срабатывания геркона - 1мс, что заведомо выше любых требований.

Электролит уберу, а про геркон вам, умным людям, решать) Для него есть какие-нибудь ограничения? 

Share this post


Link to post
Share on other sites

Конечно есть - сложно рассчитать ток срабатывания, поэтому придётся экспериментально подбирать. Я как-то делал такой узел, 5 витков провода 1мм вокруг геркона и он срабатывает при токе 200-300мА и зависит от положения геркона внутри импровизированной катушки. Геркон правда уже был в специальном чехле под реле на 1.5В, но воспроизвести его легко - это бумажная трубочка пропитанная лаком, или пластик если найдёшь.
Если ток срабатывания получится слишком маленький, то можно его увеличить зашунтировав катушку еще одной такой же, только уже без геркона. Или низкоомным резистором, один параллельно другой последовательно с катушкой - такие резисторы должны быть порядка 0.025Ом, чтобы не мешать работе двигателя а может и вовсе кусочек нихромовой проволоки, буквально пару сантиметров.


Учение - изучение правил. Опыт - изучение исключений.

Share this post


Link to post
Share on other sites

Тракторист, а расскажи полное техническое задание, может проще будет сделать схему без МК и будет и проще и надежнее???

Share this post


Link to post
Share on other sites
1 час назад, m593ak сказал:

Тракторист, а расскажи полное техническое задание, может проще будет сделать схему без МК и будет и проще и надежнее???

Пока это автоматика  для откатных ворот.  Только отсутствует возможность использования концевиков или датчиков. Только остановка по току или шуму. Двигатель со стеклоочистетелей ВАЗа (4А). Цепь, звездочка и две крайние точки. Время работы двигателя должно регулироваться в прошивке.  

Edited by boogiemen

Share this post


Link to post
Share on other sites

а обоснуй отсутствие возможности установки концевиков??

типа асфальт или бетон - не проложить провод - это не принимается. концевики устанавливаются непосредственно над ведущей звездочкой привода откатных ворот.

Какие еще есть доводы по отсутствию проводов??

А провода тянуть все равно придется, не к концевикам, так к оптодатчику безопасности.

Вот ситуация - ты выезжаешь на машине и случилась аказия - заглохла машина в створе ворот, а Воротина уже двигается и своей 500 килограммовой массой заезжает тебе в бок.... и из за сэкономленных пару проводов и 100 рублей идешь терять время и ремонтировать жестянку.

Хорошо, если жестянку, а то может оказаться зажата твоя рука или маленький ребенок...

 

Только не говори, что концевики ставить нельзя из за того, что ворота установлены в пороховом цеху и искры приведут к взрыву)))) не Верю.

мотор тоже искрит не по детски коллекторный. 

И не забудь, любой программный код надо очень тщательно проверять, вот пропадет питание на половине пути, что будет делать привод после возобновления питания? а как МК реагирует сам на помехи по питанию, а " уплывет " программа - и такое бывает. 

Вот пример компановки редуктора откатных ворот.  рычаг микриков находиться прямо над приводной шестерней.   И все... никаких проводов.

Там тоже собрано на МК, но с тем богатым набором функций и возможностей - это оправдано, для самопала - нет смысла .

motor_an-motors.jpg

Edited by m593ak

Share this post


Link to post
Share on other sites

Знали бы вы, сколько раз я слышал эти слова) Я прекрасно понимаю, что необходимо обезопасить перемещение ворот, но это можно добавить в дальнейшем. Облазил весь город в надежде найти нормальные влагозащищённые концевики, но люди смотрят на меня как на умалишённого) Сейчас мне просто нужна схема управления двигателем с регулируемым временем работы и остановкой по току или шуму. Всё остальное добавлю, если найду в этой глуши)) Я уже перебрал кучу вариантов схем и этот вариант мне более близок)

Edited by boogiemen

Share this post


Link to post
Share on other sites

Раз близок, то его и отлаживать. Сначала без программы (не устанавливать мк в плату). Убедиться в работе реле и движка. Отследить сигнал на выходе узла контроля тока (на соответствующем входе мк), особенно при заклинивании вала движка (наехали на препятствие). И только тогда браться за программу.


Я не раздаю удочки. Я продаю рыбу.

Share this post


Link to post
Share on other sites

ACS712- проще будет,а при старте игнорируйте (до определенного момента!) пусковой ток.Эти датчики достаточно точны,проверял

Share this post


Link to post
Share on other sites

Самый влагозащищенный концевик - это геркон....а применяя герконы на 10-16А можно и от реле отказаться промежуточных.)))

Share this post


Link to post
Share on other sites

на фото китайский блок автоматики (если не ошибаюсь-als500),мега16,А так-нормальная автоматика

Share this post


Link to post
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Сообщения

×
×
  • Create New...