Управление приводом
Все спасибо за помощь, пока сижу и разбираюсь.
Изначально конечно хотел вытряхнуть потроха из сервомашинки, и подключить все это дело через сервотестер… Но мне кажется нелогично несколько раз кодировать и разкодировать сигнал…
Сейчас смотрю в сторону проекта OpenServo но пока не разобрался в нем…
Ещё в тему. Попался мне под руку редуктор от китайской игрушки. Согласитесь, похож на серву. Ну и стал я в эту сторону экспериментировать. В том числе подключением к оному потрохов из сервомашинки. Что сказать - работает, только перед тем как займёт нужную позицию раз пять туда-сюда промотыляется. Инерционность дикая. Учитывайте это в своём проекте.
Решил кстати узнать, сколько будет стоить разработка данного устройства, создал тему на форуме радиокот, все описал… и маленько обомлел!!!
За разработку ПО просят 2000р.
За разработку схемы 5000р.!!!
Это реальные цены? или я чего-то не понимаю…
Ну если фабричная реализация, со всеми отлаживаниями прошивок, многослойными заказными платами, то возможно. А так я могу вам прям тут скетч для ардуины навалять из пары строк. Но за результат не ручаюсь. 😃
В том то и дело что не фабричная сборка. Сборка на макетке, и без отладки…
тоже набросал ,для так поигратса ,написано на базе VarSpeedServo эта библиотека должна быть в IDE
Решение очень простое. Нужно взять электронику от мощной рулевой машинки и встроить в редуктор. Если диапазон работы вашего редуктора с резистором обратной связи будет не в “рамках”, то необходимо будет добавить резисторы (методом подбора) с двух сторон вашего встроенного резистора.
Решил кстати узнать, сколько будет стоить разработка данного устройства, создал тему на форуме радиокот
интересно что там написали, иногда страшно что-то спрашивать у этих сумошедших программистов
Мда… Думал микроконтроллеры проще освоить… Скачал Atmel Studio 7.0, смотрел уроки… Но пока только примерно понял как ШИМ генерировать на attiny2313…
#define F_CPU 8000000UL
#include <avr/io.h>
#include <util/delay.h>int main(void)
{
DDRB = 0xff; // все выводы порта B сконфигурировать как выходы
DDRD = 0x00; // все выводы порта D сконфигурировать как входыPORTD = 0xff; // установить “1” на всех выводах порта D,
// включаем подтягивающие резисторы
while (1)
{
if (!(PIND & (1<<PIND1))) // проверить “0” на линии 1 порта D
{
TCCR1A = (1<<COM1B1) | (1<<WGM10);
TCCR1B = (1<<WGM12) | (1<<CS10);
OCR1B = 240;
DDRB |= (1<<PB4);
}
else
{
TCCR1A = (1<<COM1B1) | (1<<WGM10);
TCCR1B = (1<<WGM12) | (1<<CS10);
OCR1B = 10;
DDRB |= (1<<PB4);
}
}
}
Но вот с подключением резистора и написание кода под него вообще не поддается.
Кто готов помочь?
Но вот с подключением резистора и написание кода под него вообще не поддается. Кто готов помочь?
Мда. Так правильней. extremeelectronics.co.in/…/servo-motor-control-by-… Ну там с азов надо начинать, да и у 2313 нету ADC. Можно, но надо заморочиться. Может всё-таки так проще
doc.arduino.ua/ru/prog/AnalogWrite Под ваш привод точно пойдёт. Пару строк дописать 😃
P. S. Из нужного вам вооружения на борту 2313 только компаратор. Может только сравнивать 2 напряжения и говорить выше или ниже. Либо ваяйте каким-нибудь ШИМом на резистор пилу и теми же таймерами мерить время, или транзистор с конденсатором и… тоже.
Любая задача должна начинаться с техзадания. Оно как-бы было озвучено в первом пункте:
Имеется привод (см. вложение), необходима схема управления приводом с трёх кнопок, желательно на avr. Принцип работы следующий…
Там было три кнопки, сейчас в схеме откуда-то появился переменный резистор. Еще в ТЗ не отображено, как должен вести себя мотор-редуктор при не нажатых кнопках - просто обесточиваться или удерживать текущее положение. Если первый вариант, то никакого контроллера там не нужно, можно оттолкнуться от этой схемы: rcopen.com/forum/f68/topic138133/36242 В вашем случае нарисованный на схеме регулятор не нужен, все подключается прямо к источнику питания. Концевики шунтируются управляющими кнопками крест-накрест, третья кнопка для медленного хода должна подключаться параллельно одной их первых двух, но последовательно со своим балластным резистором.
Любая задача должна начинаться с техзадания.
Полностью согласен. Видимо тем и отличаются любители, что любят переобуваться по нескольку раз. 😃
Концевики шунтируются управляющими кнопками крест-накрест, третья кнопка для медленного хода должна подключаться параллельно одной их первых двух, но последовательно со своим балластным резистором.
И никаких процессоров нафинг !
сейчас в схеме откуда-то появился переменный резистор
а как кнопка и резистор вчесте работать должны , я пробовал у них тупо конфликт , я так понял нужно две переменные к кнопке и к переменнику
Щас практически на каждом китайском сервотестере стоит переменник и батарея кнопок. В общем случае там организован цикл с частотой 50 Гц. Первыми опрашиваются кнопки и от них серва либо уходит в заданное крайнее положение, либо начинает елозить из края в край. Опрос канала АЦП на время нажатия кнопки должен блокироваться. Когда кнопки отпущены, доходит очередь до переменника. Для резвого и вменяемого распределения ресурсов такие вещи лучше писать на ассемблере. Для задачи автора темы достаточно чего-то совсем мелкого, типа тини13а.
Управление приводом
Егор вот посмотри здесь ,правда там для сервы ,но может что то интересное для себя найдете там с права оглавление,есть и написанные программы под Пик контролер.
alex-exe.ru/radio/robotics/servo-pic/
Всем спасибо за советы, особенно Вам Дмитрий. Про Ардуино даже и не думал… Попробую на нем сделать.
Согласен, на концевиках проще всего, но моторчик в данном редукторе имеет хорошую инерцию, и после пары применений на схеме с концевиками, я этот редуктор скорей всего выкину.
Резистор вроде в ТЗ присутствовал всегда, см. вложение.
И не надо говорить, что я переобуваюсь… Хотя да, скорей всего я буду переобуваться, т.к. сам до конца не знаю что в итоге хочу получить, и я не только про привод…
Сам руковожу проектным отделом, самого бесят заказчики, которые дают невнятное ТЗ, а потом переобуваются в самый последний момент.
Согласен, на концевиках проще всего, но моторчик в данном редукторе имеет хорошую инерцию, и после пары применений на схеме с концевиками, я этот редуктор скорей всего выкину.
Погуглите фразу “кулачок механизм”.
Все, стоп. Забыли про концевики и кулачковые механизмы… Это не наш метод, и не интересно… Пока электриком работал на них насмотрелся.
Буду делать на Ардуино. Сижу изучаю…
Все, стоп. Забыли про концевики и кулачковые механизмы… Это не наш метод, и не интересно… Пока электриком работал на них насмотрелся.
Буду делать на Ардуино. Сижу изучаю…
Вы только не исчезайте , всётаки будет интересен результат
Буду делать на Ардуино. Сижу изучаю…
Хотите вместе поизвращаемся. 😃 Та китайская мандула с фото всё ещё в работе. И да. Больше чем ардуинку я к ней, видимо, не подключу.
P. S. У меня случай тяжелее. Она вот к чему прикручена. Сразу не бейте. Каждый сходит с ума по-своему. 😃 Там ещё и ROS распределённый а ардуинка нодой. Надо было его на помойку отпереть. Теперь жалко.
Что это? С одной стороны напоминает человеческий скелет… С другой - концептуальную вешалку