Автоматизация с помощью энкодера

Намоточные, сверлильные, электроэррозионные и другие станки с ЧПУ.
ESTerekhov
Новичок
Сообщения: 32
Зарегистрирован: 22 сен 2015, 14:36
Репутация: 0
Настоящее имя: Егор Терехов
Контактная информация:

Автоматизация с помощью энкодера

Сообщение ESTerekhov »

всем добрый день. Вновь прошу помощи у гуру. Есть рабочий станок для художественной ковки: как мне повторить автоматику, чтобы исполнить те же задачи на других станках?
Нужно автоматизировать процесс так, чтобы оператор поворачивал стол на определенный угол и в определенную сторону не «Держа кнопку нажатой» и на глаз, а один раз нажав кнопку и стол сам поворачивается на заданный угол.
Желательно, чтобы все это где-то запоминалось, как отдельная программа и в любой момент можно было выбрать другую программу.
Надеюсь, я смог понятно объяснить.
При этом программа должна выполняться один раз а потом поворачивать стол в заданное нулевое положение.
Чтобы было понятнее, попробую описать видение готовой программы:
Пример 1: жмем «Пуск» – стол поворачивается на 90⁰ и останавливается, жмем опять «Пуск» – стол поворачивается еще на 100⁰ и останавливается, жмем опять «Пуск» – стол поворачивается еще на 70⁰ и тут же поворачивается на 10⁰ в обратную сторону, жмем «Реверс» – стол поворачивается в обратном направлении до нулевой точки.
Пример 2: жмем «Пуск» – стол поворачивается на 110⁰ и останавливается, жмем опять «Пуск» – стол поворачивается еще на 60⁰ и тут же поворачивается на 10⁰ в обратную сторону, жмем «Реверс» – стол поворачивается в обратном направлении до нулевой точки.
Вот что я увидел при "вскрытии" станка:
1) на выходной вал ременной передачи посажены два оптических датчика (входной и выходной, видимо) Они реагируют на положения некоего подобия крыльчатки - на фото показана.
2) на выходной вал редуктора тоже посажен оптический датчик. к этому же валу прикреплено два железных лепестка, которые как-то выступают прерывателями датчиков, при вращении они проходят между половинами датчика.
3) все провода ведут в "белую коробочку", вскрытие которой показало, что все состоит из малопонятных мне транзисторов и предохранителей, причем у меня сложилось ощущение, что большая часть из них давно уже не выпускается.
4) Возможно, это и есть то самое "Ардуино", просто я честно в этом не понимаю - у меня задача повторить так, чтобы работало.

Эпицентром коробочки является большой черный процессор ( а я полагаю, что это именно процессор) и рядом с ним маленький блок памяти (опять же я только предполагаю). Возможно ли как-то выцепить с них готовую программу и приладить ее к современному ПЛК?
Очень прошу Вас мне помочь - вопрос стоит очень остро...
Вложения
20151008_091857.jpg (3348 просмотров) <a class='original' href='./download/file.php?id=59974&sid=db72be2eab6bfcb6c547514d611702db&mode=view' target=_blank>Загрузить оригинал (1.58 МБ)</a>
20151008_091904.jpg (3348 просмотров) <a class='original' href='./download/file.php?id=59975&sid=db72be2eab6bfcb6c547514d611702db&mode=view' target=_blank>Загрузить оригинал (1.81 МБ)</a>
20151008_091913.jpg (3348 просмотров) <a class='original' href='./download/file.php?id=59976&sid=db72be2eab6bfcb6c547514d611702db&mode=view' target=_blank>Загрузить оригинал (2.08 МБ)</a>
20151008_091921.jpg (3348 просмотров) <a class='original' href='./download/file.php?id=59977&sid=db72be2eab6bfcb6c547514d611702db&mode=view' target=_blank>Загрузить оригинал (2 МБ)</a>
20151008_091952.jpg (3348 просмотров) <a class='original' href='./download/file.php?id=59978&sid=db72be2eab6bfcb6c547514d611702db&mode=view' target=_blank>Загрузить оригинал (2 МБ)</a>
20151008_091958.jpg (3348 просмотров) <a class='original' href='./download/file.php?id=59979&sid=db72be2eab6bfcb6c547514d611702db&mode=view' target=_blank>Загрузить оригинал (2.04 МБ)</a>
20151008_092002.jpg (3348 просмотров) <a class='original' href='./download/file.php?id=59980&sid=db72be2eab6bfcb6c547514d611702db&mode=view' target=_blank>Загрузить оригинал (1.95 МБ)</a>
20151008_092013.jpg (3348 просмотров) <a class='original' href='./download/file.php?id=59981&sid=db72be2eab6bfcb6c547514d611702db&mode=view' target=_blank>Загрузить оригинал (1.91 МБ)</a>
20151008_092115.jpg (3348 просмотров) <a class='original' href='./download/file.php?id=59982&sid=db72be2eab6bfcb6c547514d611702db&mode=view' target=_blank>Загрузить оригинал (1.95 МБ)</a>
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Автоматизация с помощью энкодера

Сообщение selenur »

Если разработчик не заблокировал мк, то прошивку из микроконтроллера достать легко, и залить в другие мк, если нужно изменить код, добавить функциональность, то это сложно, т.к. прошивка в виде машинных кодов, и переделка уже сложнее
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
ESTerekhov
Новичок
Сообщения: 32
Зарегистрирован: 22 сен 2015, 14:36
Репутация: 0
Настоящее имя: Егор Терехов
Контактная информация:

Re: Автоматизация с помощью энкодера

Сообщение ESTerekhov »

На передней панели есть что-то наподобие гнезда для ключа как от домофона. Мог ли он этим заблокировать микроконтроллер?
Код мне менять необязательно, мне нужно по сути скопировать это все дело. Реально ли достать прошивку и залить ее в память ПЛК? Ни разу такое делать не приходилось?
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Автоматизация с помощью энкодера

Сообщение selenur »

Нет, в плк не получиться, машинные коды в прошивке конкретно для мк атмега16
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Автоматизация с помощью энкодера

Сообщение selenur »

Нет, заблокировать мк, что-бы нельзя было скопировать прошивку, можно только в момент программирования мк через программатор.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
ESTerekhov
Новичок
Сообщения: 32
Зарегистрирован: 22 сен 2015, 14:36
Репутация: 0
Настоящее имя: Егор Терехов
Контактная информация:

Re: Автоматизация с помощью энкодера

Сообщение ESTerekhov »

Только в аналогичную структуру Ардуино? Это хоть точно оно, а то я и тут могу напутать...
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Автоматизация с помощью энкодера

Сообщение selenur »

Насчет ардуины не скажу, т.к. не встречал модель с мк атмега16, а модель например атмега 168 которая применяется в ардуинах немного отличается, и прошивка в ней может не заработать.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
bolek4321
Мастер
Сообщения: 204
Зарегистрирован: 27 сен 2014, 07:59
Репутация: 37
Контактная информация:

Re: Автоматизация с помощью энкодера

Сообщение bolek4321 »

ESTerekhov писал(а):... мне нужно по сути скопировать это все дело. Реально ли достать прошивку и залить ее в память ПЛК? Ни разу такое делать не приходилось?
Если коротко, то дураков нынче уже нет, рассчитывать на то, что прошивка не защищена наивно, мягко говоря.
Повторить без прошивки - это заново все спроектировать, при этом, имея ввиду работу не одиночного станка, а линейки, проект может и отличаться от исходного.
Imho, если нужно быстро, следует связаться с изготовителем и купить требуемое количество комплектов электроники (механика, как я понял, уже есть).
Все остальные пути будут существенно медленнее.

В стартовом посте нет важных деталей, например, нет описания двигателя, который там стоит? Постоянного тока, переменного? Напряжение его питания и мощность и т.п.
Судя по картинкам, двигатель через ремень крутит шкив с энкодером на его валу, а уж вал этого шкива через редуктор крутит стол.

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

Другой путь - использовать один компьютер для управления всем "стадом". Этот путь перспективнее в смысле простоты наращивания "поголовья" и хранения программ.
Требует разработки новой электроники. Варианты исполнения могут быть разными, например:
1. контроллер на станке получает от компа задание - повернуть стол на указанный угол, по окончании поворота - дать ответ компу.
2. контроллер на станке включает двигатель в нужном направлении вращения и предоставляет компу информацию о текущем угле поворота, сигнал остановки в контроллер выдает сам комп.
...
Такие варианты позволят работать параллельно достаточно большому количеству станков.

Однако, повторюсь: все эти варианты небыстрые. И, скорее всего, обойдутся дороже покупки готовых контроллеров, аналогичных имеющемуся.

P.S. А оператор (художественной ковки) после промежуточного останова вращения что-то делает с железкой?

P.P.S. Визуально эта платка на ардуину не похожа и, скорее всего, это не ардуина. Ардуины любят "чайники" от электроники и программирования, или если совсем не хочется разводить плату.
Аватара пользователя
grakun
Мастер
Сообщения: 273
Зарегистрирован: 30 сен 2015, 02:47
Репутация: 53
Настоящее имя: Гракун
Откуда: г.Саратов
Контактная информация:

Re: Автоматизация с помощью энкодера

Сообщение grakun »

selenur писал(а):Насчет ардуины не скажу, т.к. не встречал модель с мк атмега16, а модель например атмега 168 которая применяется в ардуинах немного отличается, и прошивка в ней может не заработать.
Почему не заработает, если у другой атмеги памяти хватит заработает. Для этого нужно Arduino Hex Uploader and Programmer http://www.ngcoders.com/downloads/ardui ... programmer. Но сначала нужно достать НЕХ файл.
Аватара пользователя
grakun
Мастер
Сообщения: 273
Зарегистрирован: 30 сен 2015, 02:47
Репутация: 53
Настоящее имя: Гракун
Откуда: г.Саратов
Контактная информация:

Re: Автоматизация с помощью энкодера

Сообщение grakun »

IMG_0373.jpg (3062 просмотра) <a class='original' href='./download/file.php?id=63057&sid=db72be2eab6bfcb6c547514d611702db&mode=view' target=_blank>Загрузить оригинал (226.57 КБ)</a>
bolek4321 писал(а): Визуально эта платка на ардуину не похожа
По фотографии платы невозможно сказать. Если атмега работает без внешнего кварца то там нет никаких деталей кроме самой микросхемы. Она может подключаться через модуль FT232 к usb и работать в среде ардуино.
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Автоматизация с помощью энкодера

Сообщение selenur »

grakun писал(а):
selenur писал(а):Насчет ардуины не скажу, т.к. не встречал модель с мк атмега16, а модель например атмега 168 которая применяется в ардуинах немного отличается, и прошивка в ней может не заработать.
Почему не заработает, если у другой атмеги памяти хватит заработает. Для этого нужно Arduino Hex Uploader and Programmer http://www.ngcoders.com/downloads/ardui ... programmer. Но сначала нужно достать НЕХ файл.
В микроконтроллере есть область памяти зарезервированная для хранения параметров микроконтроллера, например записывая значение в portC запись значения, происходит например в ячейку с адресом 0х0452.
В зависимости от модели микроконтроллера эти адреса могут отличаться, и в похожем микроконтроллере этот адрес может хранить например настройку usart, так что дело тут не в объеме памяти для прошивки :-)
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
grakun
Мастер
Сообщения: 273
Зарегистрирован: 30 сен 2015, 02:47
Репутация: 53
Настоящее имя: Гракун
Откуда: г.Саратов
Контактная информация:

Re: Автоматизация с помощью энкодера

Сообщение grakun »

selenur писал(а):В микроконтроллере есть область памяти зарезервированная для хранения параметров микроконтроллера, например записывая значение в portC запись значения, происходит например в ячейку с адресом 0х0452.
В зависимости от модели микроконтроллера эти адреса могут отличаться, и в похожем микроконтроллере этот адрес может хранить например настройку usart, так что дело тут не в объеме памяти для прошивки :-)
Может быть и так.
Аватара пользователя
raddd
Почётный участник
Почётный участник
Сообщения: 1564
Зарегистрирован: 10 фев 2015, 08:50
Репутация: 539
Настоящее имя: Alexey Rodionov
Откуда: Беларусь Минский р-н
Контактная информация:

Re: Автоматизация с помощью энкодера

Сообщение raddd »

Насколько я помню в атмелах этого неслучается. Там регистры (покрайней мере у одинаковых по кол-ву ног) лежат по одинаковым адресам. Это самое главное отличие от пик-контроллеров. Переносимость кода.
атмел даже в тиньки вставила бит который включает поддержку старой ат9313 помоему.
||||||||||||
||||||||||||
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Автоматизация с помощью энкодера

Сообщение selenur »

mega 168 и карта регистров http://www.atmel.com/images/doc2545.pdf на странице 343
мега 16 http://www.atmel.com/images/doc2466.pdf на странице 331
мега 16 и 168 отличаются, прошивка точно не заработает...
Причем raddd прав что есть некоторые модели у которых есть схожести, в pdf файле на мегу 168 еще упоминается мега 48,88 т.к. они похожи.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Ответить

Вернуться в «Прочие станки»