Синхронно разноименная частота с двух выходов

Ответить
noahi1977
Рядовой
Сообщения: 8
Зарегистрирован: 03 май 2020, 19:50
Имя: Эдуард

Синхронно разноименная частота с двух выходов

Сообщение noahi1977 »

Всем здравствуйте.
Вопрос.Возможно ли с помощью флпрог генерить с двух каналов синхронную разноименную частоту.
Например одновременно 25мкс и 5000мкс.
Я в своих проектах использую ЧПУ моторы взрослые,сервы .Нужен разгон ,работа,торможение,стоп. Ранее получалось обходить постоянную проблему сбоя частоты .
Иной раз стоит просто добавить аналоговый вход в проект ,ничего не считающий и виден сбой частоты.Уходил с данной логики.
В последнем проекте обойти не получилось.Пробовал и на меге,уно,нано.Сбой частоты заметен и без осцилографа.
Разнёс проэкт на 3 контроллера для пробы,чтоб снять нагрузку с меги ,но нужна обратная связь для счётчиков.Хотя сам проэкт минимален по ресурсам для самого простого контроллера.
Но идет потеря в счётчиках .Потеря критична.
Логика построена на счётчиках и она работает прекрасно.Достаточно высокая точность поворота нескольких моторов нужна.Но пришлось изменить из за передаточного числа
редукторов.
Подсказали мне,что нужен язык СИ или ещё какой, работа с регистрами иначе удачи не видать.Говорят промышленные PLC на языке FBD имеют такой же неприятный нюанс.
Хочу окончательно убедится в невозможности и искать специалистов на стороне для электроники или значительное изменение в конструкции.
Спасибо Всем ответившим.Надеюсь я смог донести смысл.
Dragony
Сержант
Сообщения: 170
Зарегистрирован: 02 янв 2020, 11:55
Имя: Александр
Благодарил (а): 10 раз
Поблагодарили: 4 раза

Синхронно разноименная частота с двух выходов

Сообщение Dragony »

Не совсем понятно, что имеется в виду -
noahi1977 писал(а): 03 май 2020, 20:34 синхронную разноименную частоту
:smile44:
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Синхронно разноименная частота с двух выходов

Сообщение Ingwar »

noahi1977 писал(а): 03 май 2020, 20:34 Хочу окончательно убедится в невозможности
Может что из этих тем подойдет...
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
noahi1977
Рядовой
Сообщения: 8
Зарегистрирован: 03 май 2020, 19:50
Имя: Эдуард

Синхронно разноименная частота с двух выходов

Сообщение noahi1977 »

Пример.
При активации с одной переменной работают два генератора .Каждый на свой выход.
25мкс и 5000мкс.
Подключаем осцилограф и видим .Частоты плавают.
Совсем плавать начинают с добавлением аналогового входа.Который может совсем ничего не считать.
Может плавать и сама частота с одного генератора при добавлении аналоговых входов логики.
Плавает значительно.
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Синхронно разноименная частота с двух выходов

Сообщение Ingwar »

noahi1977 писал(а): 03 май 2020, 21:55 при добавлении аналоговых входов логики
Попробуйте блоки от Александра (быстрые входы/выходы) в разделе пользовательские блоки.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
noahi1977
Рядовой
Сообщения: 8
Зарегистрирован: 03 май 2020, 19:50
Имя: Эдуард

Синхронно разноименная частота с двух выходов

Сообщение noahi1977 »

У меня частота идет на промышленный драйвер.Он управляет моторами.Работает хорошо.Но..
Стоит добавлять логику аналога ,частота падает значительно.Хотя в настройках генератора стоит параметр генерации.И он совсем далеко от заданного.
Когда работаем с логикой 0 или 1 такого нет.
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Синхронно разноименная частота с двух выходов

Сообщение Ingwar »

Я понимаю Вашу проблему и знаю причину. Предложенные варианты попробуйте.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
noahi1977
Рядовой
Сообщения: 8
Зарегистрирован: 03 май 2020, 19:50
Имя: Эдуард

Синхронно разноименная частота с двух выходов

Сообщение noahi1977 »

[ref]Ingwar[/ref],
Ingwar
Не могли бы указать на данные быстрые блоки Александра..
К сожалению с Андроида не пойму как обратиться именно к давшему совет

Отправлено спустя 2 минуты 3 секунды:
Будем пробовать по данным ссылок.Спасибо
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Синхронно разноименная частота с двух выходов

Сообщение Ingwar »

noahi1977 писал(а): 03 май 2020, 22:07 быстрые блоки Александра..
viewtopic.php?t=3065

Отправлено спустя 2 минуты 5 секунд:
http://cyber-place.ru/showthread.php?t=550
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20 сен 2019, 11:38
Имя: Эдуард

Синхронно разноименная частота с двух выходов

Сообщение edyapd »

noahi1977 писал(а): 03 май 2020, 20:34 генерить с двух каналов синхронную разноименную частоту.
Например одновременно 25мкс и 5000мкс.
Небольшое отступление. Частота измеряется в Герцах (Гц, кГц, МГц ...)
То, что вы написали, это период.
У AtMega2560 тактовая частота 16МГц. Значит на одну команду уходит от 0.0625мкс до 0.188мкс. Чтобы можно было получить на выходе сигнал с периодом 25мкс, надо его переключать каждые 12.5мкс. Если к нему привязать ещё и вывод который будет переключаться каждые 2500мкс, то такое можно сделать только на прерываниях таймера. И при этом придётся побороться за каждый такт работы микроконтроллера. Вы же хотите подвесить на него ещё и аналоговый вход.
Думаю вам надо поискать более скоростной микроконтроллер.
Аватара пользователя
ElectronicRTC
Рядовой
Сообщения: 49
Зарегистрирован: 09 июл 2019, 06:13
Откуда: Москва
Имя: Евгений

Синхронно разноименная частота с двух выходов

Сообщение ElectronicRTC »

[ref]edyapd[/ref], так сразу бы рекомендовали компьютер ))) чего тут скоростной микроконтроллер то .
[ref]noahi1977[/ref], предположу что нужно или использовать отдельный ардуино-мини именно для задачи стабильности частоты, или же нужно СИ или ассемблер (что будет сложнее)
Промышленная электроника и оборудование
edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20 сен 2019, 11:38
Имя: Эдуард

Синхронно разноименная частота с двух выходов

Сообщение edyapd »

[ref]ElectronicRTC[/ref], Обязуюсь поставить вам десять плюсов, если вы сможете сделать данный проект на FLProg, со стандартными блоками. А если сможете реализовать это на СИ, заведя обратную связь, как это просит ТС, то буду считать вас гуру в СИ. (При условии, что ТС всё устроит)
А пока только общие слова и ничего более.
ElectronicRTC писал(а): 04 май 2020, 06:55 так сразу бы рекомендовали компьютер
Для всех этих двигателей есть промышленный контроллеры. И думаю ТС про них знает. Но они довольно таки дороги. Угадайте с трёх раз, почему их не делают на дешёвых АтМегах?
Dragony
Сержант
Сообщения: 170
Зарегистрирован: 02 янв 2020, 11:55
Имя: Александр
Благодарил (а): 10 раз
Поблагодарили: 4 раза

Синхронно разноименная частота с двух выходов

Сообщение Dragony »

edyapd писал(а): 04 май 2020, 06:05 Думаю вам надо поискать более скоростной микроконтроллер.
Какой-нибудь типа STM?
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

Синхронно разноименная частота с двух выходов

Сообщение Sancho »

edyapd писал(а): 04 май 2020, 06:05 Чтобы можно было получить на выходе сигнал с периодом 25мкс, надо его переключать каждые 12.5мкс. Если к нему привязать ещё и вывод который будет переключаться каждые 2500мкс, то такое можно сделать только на прерываниях таймера. И при этом придётся побороться за каждый такт работы микроконтроллера. Вы же хотите подвесить на него ещё и аналоговый вход.
Согласен полностью, потому-что:
Sancho писал(а): 25 янв 2018, 16:39 D12_High;
value1=analogRead(2);
D12_Low;
Чтение 1-го аналогового входа с присваиванием 112µs!!! два - 224µs

D12_High;
value1=A2_Read;
D12_Low;
Чтение быстрого аналогового входа с присваиванием 64µs!!! два 136µs

После этого все логические операции в программе становятся ВООБЩЕ малозначимыми по времени выполнения!
Вижу решение в переходе на stm32, но придётся всё-равно писать на си, или для генерации использовать другие мк, например 168, управляемые по SPI.
Мастер будет читать аналог и основное будет в нём.
Мысли понедельниковсого утра :)
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
noahi1977
Рядовой
Сообщения: 8
Зарегистрирован: 03 май 2020, 19:50
Имя: Эдуард

Синхронно разноименная частота с двух выходов

Сообщение noahi1977 »

Я пробовал использовать Мегу и две нано.
Логика на Меге.Частоты на Нано.Но для корректной(как по мне),,мягкой и красивой работы моторов нужен старт,разгон,работа,торможение,стоп.
Далее ,если это поиск чёткой позиции ,а их может быть много и без конечников то нужна обратная связь.Но для каждой позиции нужно своё начало старта,разгона итд.Поэтому идет нагромождение счётчиков с обратной связью о сделанных шагах и кучей проводов.Так же при нескольких контроллерах теряются в счетчиках числа.Да..при таких скоростях счётчики работают странно.Это критично.
В алгоритм сторонних программ с открытым доступом изначально в настройках мотора закладываются ускорения,торможения перед стопом.И если надо проехать 10см ,то мы просто указываем мотору проехать 10см .А общет идет внутри.Я не програмист контроллеров .И понимаю,даже если логика с несколькими поедит это хорошо,но не выход.
Далее о разгоне..при больших массах и небольшом моторе ,чтоб просто поднять скорости перемещения без ухода драйвера в ошибку нужна мягкость.
Частоту в мкс я написал для простого понимания,ведь в настройках генератора мы вводим период, а не герц.
Поэтому приходиться постоянно переводить гц в мкс,и мс.

Буду пробовать с данными ссылкам выше.
Посмотрим ,что получиться.
Спасибо откликнувшимся.
Аватара пользователя
ingener
Лейтенант
Сообщения: 580
Зарегистрирован: 14 окт 2018, 00:26
Имя: Андрей
Благодарил (а): 2 раза
Поблагодарили: 3 раза

Синхронно разноименная частота с двух выходов

Сообщение ingener »

25 мкс это 40кГц? Разве сервоприводу нужны такие частоты? :shok:
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Синхронно разноименная частота с двух выходов

Сообщение Ingwar »

ingener писал(а): 04 май 2020, 12:44 Разве сервоприводу нужны такие частоты?
Сервопривод это не только машинка для поворота на угол, но и мотор (в т. ч. шаговый) + энкодер.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Аватара пользователя
ingener
Лейтенант
Сообщения: 580
Зарегистрирован: 14 окт 2018, 00:26
Имя: Андрей
Благодарил (а): 2 раза
Поблагодарили: 3 раза

Синхронно разноименная частота с двух выходов

Сообщение ingener »

Ingwar писал(а): 04 май 2020, 13:18 Сервопривод это не только машинка для поворота на угол, но и мотор (в т. ч. шаговый) + энкодер.
драйверу шагового мотора нужно максимум единицы кГц, но никак не десятки. Конечно, если не включать делитель на 16 или более
noahi1977
Рядовой
Сообщения: 8
Зарегистрирован: 03 май 2020, 19:50
Имя: Эдуард

Синхронно разноименная частота с двух выходов

Сообщение noahi1977 »

Да..присутствует деление драйвера.У каждого драйвера свой пакет делений связанный в том числе с инкрементным энкодером сервопривода.
Ранее пришлось подбирать в угоду стоимости сервы и шаговый смотря на шаг деления их драйверов
Редукция на одном моторе 26к1
Быстро поворачивать нужна большая частота.
Деление драйвера подобрано так,чтоб адекватно работали счётчики Флпрога.Так как есть ограничение в присвоении числа переменной начало отсчёта.Там не более 33 с чем то тысяч на integra.Если брать выше ,то у меня неадекватно работал блок присвоения начала отсчёта счетчика.Если брать другой тип переменной, то присвоение было некорректно.
Нормально только до 33000.
В общем там компромисс из драйверов,механики и логики.И это работало отлично,до поры изменения редукции второго мотора.
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Синхронно разноименная частота с двух выходов

Сообщение Ingwar »

ingener писал(а): 04 май 2020, 13:59 драйверу шагового мотора нужно максимум единицы кГц, но никак не десятки
Давайте не будем свой опыт применения принимать за некий оптиум.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Ответить

Вернуться в «Помогите, а то я "нимагу"»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя