Энкодеры на А и В подключены? Есть муфты как пружины гибкие... Они помогут.
Энкодеры на А и В подключены? Есть муфты как пружины гибкие... Они помогут.
Dmitriy Murashov
SPS Software Engineer Automation Engineering RUS
да А и В. Есть муфты, но дело в механике!!!! люфт во время вибрации между шестернями передается на вал энкодера и я так понимаю он в свою очередь считает ипульсы по фронту и в зависимости от того как остановился привод считает вперед или назад. Мой вопрос о том как остановить счет со входа энкодера когда он не используется (то есть привод доехал и встал, а энкодер должен перестать считать)????
Или программу пример как обработать энкодер и тогда во время простоя я ее буду выключать и вибрация не будет учитываться!!!
Последний раз редактировалось Panalexfix; 10.04.2017 в 17:33.
А не нужно впадать в ступор.
Либо нужно проверить код работы со значением энкодера (если ПЛК не перегружать, то и вибрацию оно должно нормально отрабатывать)
Либо (если уж так не терпится завораживает обработку энкодера) действительно не учитывать энкодер в момент Ы.
Либо (если прямо совсем нужно ставить энкодер на паузу), то брать Hardella и обрабатывать энкодер там.
Но, наверняка достаточно будет привести КДС в порядок, и наверняка никакие паузы энкодера не нужны.
К работе ПЛК нет притензий. Через fast encider все хорошо считает без пропусков и с большим запасом по скорости(я энкодер крутил с гораздо большей скоростью и он мне все считал без пропусков). ПЛК не перегружен. В том-то и дело, что привод стоит а импульсы идут то в++ то в-- их не одинаковое кол-во все от времени вибрации зависит и в каком месте остановился энкодер (я так понимаю на каком фронте энкодера). Просто конструкция такая, что между зубьями шестеренок есть люфт и энкодер считает все импульсы при вибрации, при чем в обе стороны.Но, наверняка достаточно будет привести КДС в порядок, и наверняка никакие паузы энкодера не нужны.
как это сделать??? ведь записать в %IW0.0 ни чего не получается!!!!!Либо (если уж так не терпится завораживает обработку энкодера) действительно не учитывать энкодер в момент Ы.
я не знаю что это, но погуглю))))Либо (если прямо совсем нужно ставить энкодер на паузу), то брать Hardella и обрабатывать энкодер там.
Последний раз редактировалось Panalexfix; 11.04.2017 в 08:19.
Это пока то что пришло в голову полазив по всем форумам((((
Чуть позже опробую этот кусок
Panalexfix
У Вас энкодер 10000 об\мин, а нужно всего лишь 960 импульсов. Может стОит присмотреть другую модель, с меньшим разрешением?
Другой вариант.
Поскольку скачки связаны именно с вибрацией, то нужно рассмотреть возможность использования гибкой связи. Т. е. сам энкодер закреплен на невибрирующей поверхности, а вращение ему передается через гибкое соединение. Причем на стороне энкодера не должно быть легкого вращения, т. е. нужно демпфировать вращение для успокоения.
Ну и вариант с Hardella не стОит сбрасывать со счетов.
Последний раз редактировалось Sulfur; 11.04.2017 в 11:11.
Всем спасибо!!!!
Решил проблему координально без изменения программы, к стати или написал криво или на старых ПЛК 110-60 не работает вообще то, что выше выложил. В общем долго всматривался в работу энкодера и механизма. Косяк в том что агрегат находится далеко от компа и выяснил, что излишняя вибрация передается через соединительную муфту вала энкодера и привода, так-как сделана она из обычной резиновой шланги хоть и мягкой, но не на столько чтоб гасить вибрацию стола. Чтоб проверить догадки взял обычную пружину с нужным диаметром и через нее соединил. И тут все заработало. Еще раз спасибо всем!!!! А на счет Hardella обязательно посмотрю интересно уж очень)))))))
Приветствую!
Впервые столкнулся со связкой плк+энкодер, не совсем ясно как реализовать задачу и какими средствами я обладаю в лице codesys и библиотек.
Задача: Асинхронный двигатель 750 об/мин с энкодером (сейчас экспериментирую с 250имп/об) на валу возит по салазкам устройство, в зависимости от позиции этого самого устройства включаются/выключаются другие вспомогательные устройства. С реализацией всего думаю вопросов не возникнет, проблема в обработке данных с энкодера. Устройство ездит вперед и назад (291 мм в одну сторону). При включении лини перед началом работы необходимо реализовать сброс на ноль по ВБИ. От позиции этого же устройства зависит скорость его перемещения, т.е. задание на ПЧ.
Так вот подключил AB на FDI1, FDI2 - показания вижу, считает в обе стороны, за оборот 1000имп, но думаю не проблема могу поделить на 4. Не пойму как реализовать обнуление по вкл DI? Возможно есть готовые функции для подобных задач?
Да, с ST знаком очень слабо, получится реализовать в CFC?
ps С библиотекой oscat работает, считает в обе стороны, сброс есть, по-прежнему 1000 имп. на оборот, но стоит чуть прибавить скорость считает меньше, если крутить еще быстрее начинает считать в противоположную сторону(пробую на столе).
Последний раз редактировалось acs.ufk; 25.03.2019 в 08:38.
acs.ufk
Стандартными библиотеками Овен НЕ получится сделать сброс энкодера по желанию. Столкнулся с подобной проблемой, решил с помощью HardellaIDE (разработка Владимира Ситникова).
Пропуски и неадекватность счета происходит потому, что библиотека оскат работает в основном цикле ПЛК на основном просцессоре. Проект Hardella использует сопроцессор быстрых входов вне цикла основного процессора ПЛК, и поэтому не зависит от нагруженности ПЛК, и позволяет считать импульсы до 100кГц без пропусков и ошибок.
Последний раз редактировалось Sulfur; 28.03.2019 в 09:12.