Счетчик импульсов не работает

AVR версия программы

Re: Счетчик импульсов не работает

Сообщение Прохожий (Прохожий) » 15 июл 2018, 18:12

Привет! А зачем ШИМ нужен? Через прерывания организуй точный счёт. В основном цикле программы поставь Переключатель (Switch ) который будет работать с учётом этого прерывания. В свойствах Переключателя поставь (на пример) при первом прерывании втянуть соленоид, при 10 отпустить, при 20 втянуть и держать. И так для каждой ноги. На практике определишься хватит ли для "дрыгания" интервала в 10 прерываний или нужно его изменить. Если нужно сделать несколько дрыганий - то добавь нужное количество циклов втянуть-отпустить. Только на практике соленоид такая штука, что ты не можешь его гарантированно втянуть ровно на половину, потому, что это будет соотношение напряжения (тока) времени их действия и механической нагрузки на соленоиде создающей обратное усилие, которое не бывают постоянно одинаковым. А если такое "вздрачнуть" на практике выстраивать не будешь даже приблизительно, то и точный отсчёт времени прерыванием можно не делать. Всё засандалить счётчиком в основном цикле.
Есть конечно вариант поставить оптопару на шток соленоида и "вздрачивать" точно до середины таким образом, но готов ли ты к усложнению механики и электроники мне не понятно. А вообще, совет. Сначала нужно придумать "периферию", что и как будет работать, за счёт чего работать, как позиционироваться и прочее, а уже потом думать над реализацией в программе. Потому, что программа в этом проекте не самое сложное :)
P.S: Сделай алгоритм для одной ноги (пина), потом засунь его в макрос, а потом добавишь в проект то количество макросов, сколько захочется иметь выходов :)
Ник: Прохожий
Имя: Прохожий
Практикант
Практикант
Информация о пользователе

Re: Счетчик импульсов не работает

Сообщение akulaUS (akulaUS) » 15 июл 2018, 18:55

про вздрочнуть)) это прям в точку)))) соленоид тянет пластину с отверстием, которая подает шарики. Нагрузки почти нет, вздрочка нужна что бы растрясти шарики у пластины.
Ник: akulaUS
Имя: akulaUS
Заинтересованный
Заинтересованный
Информация о пользователе

Re: Счетчик импульсов не работает

Сообщение Прохожий (Прохожий) » 15 июл 2018, 19:00

Ты там не спортлото возродить собрался? :) Рассмотри как один из вариантов, поставить не соленоид короткую и слабую пружину в обратном направлении, и "вздрачивать" не втягиванием штока с риском шарики вытащить, а выталкиванием штока до конца (конечно ограничив его ход, что бы стену не пробить) :)
Ник: Прохожий
Имя: Прохожий
Практикант
Практикант
Информация о пользователе
Вернуться наверх

Re: Счетчик импульсов не работает

Сообщение Yushik (Андрей) » 15 июл 2018, 19:44

Можно например, через оптосимисторы управлять соленоидом переменного тока 220 в.. У них есть интерестная особенность если на него подать примерно половину напряжения то он начнёт дребезжать с частотой 50 гц. Организовать это можно двумя способами, или программно задействовав дополнительные выходы МК, которые перед основным импульсом дадут ещё один импульс для управления половиной напряжения питания соленоида. Можно сделать усложнив исполнительную часть схемы, с помощью нескольких ключей и задерживающей RC цепочки. В обоих случаях больше или меньше исполнительная часть усложнится.
Аватар пользователя
Ник: Yushik
Имя: Андрей
(Симферополь)
Продвинутый
Продвинутый
Информация о пользователе
Вернуться наверх

Re: Счетчик импульсов не работает

Сообщение Прохожий (Прохожий) » 15 июл 2018, 20:12

Симистором по любому управлять через опто-драйвер. Самое надёжное. Половину напряжения можно сделать диодом, срезав одну и полуволн сетевого напряжения. Но реализация этого потребует на 16 выходов неслабого количества радиодеталей :) Тут проще всю конструкцию разом трясти одним соленоидом долбящим в корпус через прокладку или электродвигателем с эксцентриком :)
Ник: Прохожий
Имя: Прохожий
Практикант
Практикант
Информация о пользователе
Вернуться наверх

Re: Счетчик импульсов не работает

Сообщение akulaUS (akulaUS) » 15 июл 2018, 20:27

у меня вот такие соленоиды, 10 мм хода достаточно. Попробую с прерываниями
У вас нет доступа для просмотра вложений в этом сообщении.
Ник: akulaUS
Имя: akulaUS
Заинтересованный
Заинтересованный
Информация о пользователе
Вернуться наверх

Re: Счетчик импульсов не работает

Сообщение Прохожий (Прохожий) » 15 июл 2018, 20:37

То есть точными временными интервалами? Не получится. Нагрузки нет. Есть шанс, что будет перелетать до конца :)
Ник: Прохожий
Имя: Прохожий
Практикант
Практикант
Информация о пользователе
Вернуться наверх

Re: Счетчик импульсов не работает

Сообщение akulaUS (akulaUS) » 15 июл 2018, 20:53

я эксперименты проводил, шимом втягивал его как захочешь. только надо туда сюда, как будто ситом трясешь, что бы шарик упал в пластинку. Один импульс (полный)-один шарика,а для надежности трухануть штоком надо
Ник: akulaUS
Имя: akulaUS
Заинтересованный
Заинтересованный
Информация о пользователе
Вернуться наверх

Re: Счетчик импульсов не работает

Сообщение Прохожий (Прохожий) » 15 июл 2018, 20:56

Если трясти таким образом получается - то хорошо :) Но всё таки 16 каналов... :)
Ник: Прохожий
Имя: Прохожий
Практикант
Практикант
Информация о пользователе
Вернуться наверх

Re: Счетчик импульсов не работает

Сообщение Yushik (Андрей) » 15 июл 2018, 21:33

Есть вариант как на картинке управлять дребезгом соленоида отдельной ногой МК. Соответственно в программе в условии управления каждого соленоида сделать общий макрос управления ключом Bounce. Не забывайте обнулять переменную "n" в вашей программе, обычно это делают перед началом или после подцикла программы.
У вас нет доступа для просмотра вложений в этом сообщении.
Аватар пользователя
Ник: Yushik
Имя: Андрей
(Симферополь)
Продвинутый
Продвинутый
Информация о пользователе
Вернуться наверх

Пред.След.

Вернуться в Flowcode AVR

Кто сейчас на форуме

Пользователь просматривает форум: богдан777