fixik_papus (
fixik_papus) wrote2015-12-16 01:28 pm
![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Entry tags:
Про криворуких уродов. (Записки гравицапера). (репост)
Взято отсюда с разешения автора
Справедливости ради отметим, что это - этап R&D, альфа-тестирование, но тем не менее
Орфография и пунктуация сохранены авторские, посему положено поставить значок "18+"
---------------
Меняют танкисты гусеницу у танка.
А тут к ним подлетает фея и спрашивает:
-А, что это вы тут делаете?
-Е-ся.
-А по настоящему хотите? - спрашивает фея.
-Конечно хотим!- закричали танкисты.
Взмахнула фея своей палочкой и... у танка отвалилась башня.
Поступило предложение от поставщиков, сменить серво-драйверы, на драйвера следующего поколения. Они типа лучше, дешевле, и в них полно всяческих фитчеров и самое главное полностью совместимы со старыми.
Я конечно не был в восторге такого предложения, на кой мне такой головняк, менять что-то проверенное, на что-то не проверенное, но и чётких аргументов, почему нет, у меня не было. И хоть моя интуиция не сулила мне ничего хорошего, но интуицию к делу не пришьёшь.
Для не специалистов, серво-драйвер - это такая штуковина которая умеет крутить серво-мотор.
Дарайвер сидит на шине EtherCat, по нему он получает от компьютера каждую миллисекунду команду куда ему ехать, и возвращает в компьютер реальное положение мотора и состояние его периферии цифровых и аналоговых входов и выходов, и ещё к нему можно подсоединить второй энкодер со входом заморозки.
Всё, это самая минимальная конфигурациям, самый, что ни на есть стандарт, никакими наворотами я там пользоваться не собирался, а посему решил, что всяческих баги в навороченных фитчерах (которых там должно быть как мух в навозной куче), мне не помешают. И тут начался 3.14-здец, причём 3.14-здец много ступенчатый.
3.14-здец N1. Кабели.
В новом драйвере, есть новая система подключения энкодера. Она очень навороченная, она поддерживает десятки вариантов подключения, различных типов энкодеров, даже таких о которых я никогда не слышал.
Нет только одного варианта подключения - так как на старом драйвере. Блядь драйвер предназначенный для замены старого и требует переделки всех кабелей. Это дравйвер относительно легко меняется в шкафу, а вот кабели, они проложены внутри машины, их вытащить, перепаять и проложить наново - это ещё та задача.
3.14-здец N 2. Скорость.
Выяснилось, что с новым драйвером мотор работающий на 1000 [RPM], начинает сходить с ума на 460.
Причём 3.14-доры из технической поддержки долго заявляли, что у них всё работает.
Твою мать, это что, какой-то хитрый наворот. Просто берешь любой мотор с таким же энкодером и смотришь на 460 он работает, а на 470 уже сходит с ума.
В конце-концов я уже допёр, что криворукие уроды не могут работать с энкодерами высокой резолюции, просто потому, что кто-то в коде под дельту выделил 16 бит, вместо 32 и на 463 [RPM] происходило переполнение. Уже когда я им написал, что и где искать, мне прислали новую версию для прожига.
3.14-здец N 3. Температура.
Карточка EtherCar начала греться и вылетать при работе сообщая, что у неё "Over tempature".
После долгой переписки мне прислали новую версию для карточки, где они подняли уровень определения ошибки. После этого карточки конечно падать не перестали, но зато вместе сообщена "Over tempеrature", появилось сообщение "Communication failure".
3.14-здец N 5.Communication failure.
Даже после нескольких версий карточки, периодические крешы не прекратились, хотя и стали реже.
Очередной маил расставил всё точки над i.
Фирма обещала 4 PDO (пакетов даты отправляемой по EtherCat) по 12 переменных, и один на 32 переменных, фактические работал только один PDO на 12 переменных. Остальные пока не поддерживаются, но всё бы ничего, если бы мне не сказали, что ни в коем случае нельзя передавать положение экодера и аналогового входа в одном PDO, блядь он у меня всего один.
Т.е. аналоговый вход есть, его можно откалибровать, прочитать, но нельзя передать его значение в компьютер.
3.14-здец N 6. Encoder freeze.
Разобравшись с 3.14-здецом N 5, путём использования внешнего АЦП другого производителя, я столкнулся со следующей проблемой.
Вход заморозки энкодера (Эта такая штука которая при подаче не неё сигнала должна "заморозить" значение энкодера в специальном регистре) с точностью 40 нано секунд, на самом деле работает с точностью +-500микро секунд, т.е. в 12,5 тысяч раз хуже обещанного.
Для тех кто не понимает, что это такое объясняю на примере.
Если объект двигается со скоростью 5[м/сек], то его положение можно зафиксировать с точностью 0.2 микрона, при точности заморозки 40 нано секунд, а если точность 500 микро, то ошибка составляет 2.5 миллиметра.
Твою мать - это единственная функция этой карточки. Как вы её проверяли. Теперь пишут, что мол подожди новой версии которая возможно выйдет в конце марта.
3.14-здец N 7. Ethernet failure.
Это вообще самый 3.14-здецовый 3.14 -здец. Просто потому, что он вообще ломает всю картину мира и золотой принцип - не трогай г-но, вонять не будет.
Нет я понимаю, что в драйвере есть итернет соединение, но я им не пользуюсь, от слова совсем, там даже кабелей нет.
Во время работы вдруг посыпались сообщения о проблемах с итернетом.
Очередная версия от фирмы производителя, которая должна решить проблему с девайсом который мне вообще нафиг не нужен.
Update.
3.14-здец N6. Продолжение.
Прислали новую карточку энкодера.
Баг починили, латч работает правильно и с заданной точностью, но зато вернулсяй 3.14-здец N5 .Communication failure.
У меня непроходящее желание взять ихнего программисте и бить его ногами, до тех пор пока он не поймёт, что в прерывании от энкодера, только копируют регистры, а обработку данных делают в свободное время или в прерывании более низкого преоретета чем EtherCat.
И это, только очень серьёзные косяки, которые не возможно объехать никакими ухищрениями.
В общем, знакомьтесь

Справедливости ради отметим, что это - этап R&D, альфа-тестирование, но тем не менее
Орфография и пунктуация сохранены авторские, посему положено поставить значок "18+"
---------------
Меняют танкисты гусеницу у танка.
А тут к ним подлетает фея и спрашивает:
-А, что это вы тут делаете?
-Е-ся.
-А по настоящему хотите? - спрашивает фея.
-Конечно хотим!- закричали танкисты.
Взмахнула фея своей палочкой и... у танка отвалилась башня.
Поступило предложение от поставщиков, сменить серво-драйверы, на драйвера следующего поколения. Они типа лучше, дешевле, и в них полно всяческих фитчеров и самое главное полностью совместимы со старыми.
Я конечно не был в восторге такого предложения, на кой мне такой головняк, менять что-то проверенное, на что-то не проверенное, но и чётких аргументов, почему нет, у меня не было. И хоть моя интуиция не сулила мне ничего хорошего, но интуицию к делу не пришьёшь.
Для не специалистов, серво-драйвер - это такая штуковина которая умеет крутить серво-мотор.
Дарайвер сидит на шине EtherCat, по нему он получает от компьютера каждую миллисекунду команду куда ему ехать, и возвращает в компьютер реальное положение мотора и состояние его периферии цифровых и аналоговых входов и выходов, и ещё к нему можно подсоединить второй энкодер со входом заморозки.
Всё, это самая минимальная конфигурациям, самый, что ни на есть стандарт, никакими наворотами я там пользоваться не собирался, а посему решил, что всяческих баги в навороченных фитчерах (которых там должно быть как мух в навозной куче), мне не помешают. И тут начался 3.14-здец, причём 3.14-здец много ступенчатый.
3.14-здец N1. Кабели.
В новом драйвере, есть новая система подключения энкодера. Она очень навороченная, она поддерживает десятки вариантов подключения, различных типов энкодеров, даже таких о которых я никогда не слышал.
Нет только одного варианта подключения - так как на старом драйвере. Блядь драйвер предназначенный для замены старого и требует переделки всех кабелей. Это дравйвер относительно легко меняется в шкафу, а вот кабели, они проложены внутри машины, их вытащить, перепаять и проложить наново - это ещё та задача.
3.14-здец N 2. Скорость.
Выяснилось, что с новым драйвером мотор работающий на 1000 [RPM], начинает сходить с ума на 460.
Причём 3.14-доры из технической поддержки долго заявляли, что у них всё работает.
Твою мать, это что, какой-то хитрый наворот. Просто берешь любой мотор с таким же энкодером и смотришь на 460 он работает, а на 470 уже сходит с ума.
В конце-концов я уже допёр, что криворукие уроды не могут работать с энкодерами высокой резолюции, просто потому, что кто-то в коде под дельту выделил 16 бит, вместо 32 и на 463 [RPM] происходило переполнение. Уже когда я им написал, что и где искать, мне прислали новую версию для прожига.
3.14-здец N 3. Температура.
Карточка EtherCar начала греться и вылетать при работе сообщая, что у неё "Over tempature".
После долгой переписки мне прислали новую версию для карточки, где они подняли уровень определения ошибки. После этого карточки конечно падать не перестали, но зато вместе сообщена "Over tempеrature", появилось сообщение "Communication failure".
3.14-здец N 5.Communication failure.
Даже после нескольких версий карточки, периодические крешы не прекратились, хотя и стали реже.
Очередной маил расставил всё точки над i.
Фирма обещала 4 PDO (пакетов даты отправляемой по EtherCat) по 12 переменных, и один на 32 переменных, фактические работал только один PDO на 12 переменных. Остальные пока не поддерживаются, но всё бы ничего, если бы мне не сказали, что ни в коем случае нельзя передавать положение экодера и аналогового входа в одном PDO, блядь он у меня всего один.
Т.е. аналоговый вход есть, его можно откалибровать, прочитать, но нельзя передать его значение в компьютер.
3.14-здец N 6. Encoder freeze.
Разобравшись с 3.14-здецом N 5, путём использования внешнего АЦП другого производителя, я столкнулся со следующей проблемой.
Вход заморозки энкодера (Эта такая штука которая при подаче не неё сигнала должна "заморозить" значение энкодера в специальном регистре) с точностью 40 нано секунд, на самом деле работает с точностью +-500микро секунд, т.е. в 12,5 тысяч раз хуже обещанного.
Для тех кто не понимает, что это такое объясняю на примере.
Если объект двигается со скоростью 5[м/сек], то его положение можно зафиксировать с точностью 0.2 микрона, при точности заморозки 40 нано секунд, а если точность 500 микро, то ошибка составляет 2.5 миллиметра.
Твою мать - это единственная функция этой карточки. Как вы её проверяли. Теперь пишут, что мол подожди новой версии которая возможно выйдет в конце марта.
3.14-здец N 7. Ethernet failure.
Это вообще самый 3.14-здецовый 3.14 -здец. Просто потому, что он вообще ломает всю картину мира и золотой принцип - не трогай г-но, вонять не будет.
Нет я понимаю, что в драйвере есть итернет соединение, но я им не пользуюсь, от слова совсем, там даже кабелей нет.
Во время работы вдруг посыпались сообщения о проблемах с итернетом.
Очередная версия от фирмы производителя, которая должна решить проблему с девайсом который мне вообще нафиг не нужен.
Update.
3.14-здец N6. Продолжение.
Прислали новую карточку энкодера.
Баг починили, латч работает правильно и с заданной точностью, но зато вернулсяй 3.14-здец N5 .Communication failure.
У меня непроходящее желание взять ихнего программисте и бить его ногами, до тех пор пока он не поймёт, что в прерывании от энкодера, только копируют регистры, а обработку данных делают в свободное время или в прерывании более низкого преоретета чем EtherCat.
И это, только очень серьёзные косяки, которые не возможно объехать никакими ухищрениями.
В общем, знакомьтесь

no subject
no subject
no subject
Сменить только драйвера не получиться, надо всё менять.
no subject
Но работает, да, вполне неплохо. Причем на весьма серьезных линиях с >50 осей и 2 виртуальными мастерами
no subject
А найти драйвера с EtherCat - это проще паренной репы.
no subject
no subject
Сименс - это конечно католическая свадьба, но хоть невеста красивая.:)
no subject
Хотя, кто по молодости характером интересуется :)
no subject
(хотя DriveCliq был и остается вещью в себе)
no subject
no subject
А в 300 - я один раз написал свой драйвер (там дел на полдня) - и все, дальше бесплатно
no subject
no subject
no subject
Кстати, в данном случае - простительно.
Step7 существует с 1993г
пора серьезно обновлять
вместе с контроллерами
no subject
Не могу с ходу назвать вещей, которых мне не хватало в классике и которые появились в портале. Скорее, наоборот - исчезло многое, что было.
Слышал такую версию, что сименс очень хотел похоронить випа :)
no subject
Ну, и как обычно, первые версии стоило чисто "покрутить на стенде", нормально работать с большими проектами можно начиная с 13SP1
А так - идея возни с любым сименсковским железом в одной среде - вполне удачная и удобная.
(не нужно заморачиваться со всякими интеграциями Starter во Flex, таскания тэгов ручками из Scout в тот же WinCC и так далее)
Только самой Vipa сказать забыли :)
Хотя семейство 1200, чувствую, много кого если не похоронит, то потреплет...
весьма удачную штуковину сделали
no subject
Гораздо важнее то, что его требования к железу совершенно (и неоправданно) неразумны. Степ к железу нетребователен совершенно. Летает на любом антиквариате, хоть в семёрке, хоть в ХР, хоть в виртуалке, хоть на хосте. Собственно, до недавних пор практиковали следующее: оставляли у заказчика свою виртуалку - на любом компьютере, который под это дадут. Если надо что-то быстро посмотреть или подправить - попросил запустить виртуалку, залез через TeamViewer или LogMeIn и готово, то сейчас надо чуть ли не сервер просить.
Портал на виртуалке еле дышит. Проблема решается заменой DVD на второй хард, а лучше - SSD (у меня ноут).
Классика мне таки нравилась интеграцией в один проект и флексы, и большой WinCC - AS-OS Engineering дорогого стоит. Это, пожалуй, одна из главных фишек, которая делает сименс круче многих. И за это можно простить ряд других косяков.
Недавно делал проект - классическая WinCC (7.3) и 1500 контроллер. Они, конечно, сделали возможность тянуть символьные данные из контроллера в WinCC, но через жопу. А у алармов так вообще текст терялся. Я им написал в поддержку - они достаточно быстро косяк устранили и выпустили 7 апдейт к WinCC :)
1200 ещё ни разу не трогал, но и хороших отзывов про него не слышал. Что насчёт потреплет - тут совершенно неразумное сочетание слабого контроллера и монструозной среды разработки.
no subject
Мы к TIAP сразу заказали пару программатором PG M4, на них семерка и все работает хорошо. И пара виртуалок имеется, тоже работает нормально...
ЕМНИП начиная с 14 версии обещают "интеграцию WinCC наоборот" (WinCC будет выглядеть как составная часть TIAP). Как это будет выглядеть и когда допилят до ума - будем посмотреть.
У нас наоборот - 1500 нет и не намечается :( Летом приехала новая линия на 1500, но вместо того, чтобы быть смонтированной в летний ППР - полежала в контейнерах и уехала обратно, на бельгийскую фабрику)
А вот 1200х я уже ввел в эксплуатацию 28 штук (проектов, правда, всего 11, в нескольких - по нескольку контроллеров)
Штука весьма и весьма приятная. Назвать ее слабой я никак не могу.
8 ПИД на 100мс тянет не напрягаясь, с соединениями тоже все хорошо.
Что мне нравится (причем все это для Сименса - впервые)
- полностью законченное автономное устройство. Кроме места на рейке и фазы - не нужно ничего
- ethernet с кучей протоколов (бесплатных!) как базовый порт
- SCL как базовый ЯП, причем бесплатно!
- встроенный блок питания, в т.ч. для датчиков
- открытая архитектура (стандартные протоколы, стандартная SD карточка и т.д.)
- наконец-то! возможность зарезать исходники проекта на карточку
- нормальная работа с распределенной периферией по Profinet
- F-контроллеры и F-периферия в наличии за смешные деньги
- ну, и цена от 86 евро для Сименса - это что-то вообще нереальное
Что НЕ нравится:
- нету STL
Ну, и не забываем, что 1200 это дешевое компактное решение для простых проектов.
Не нужно пытаться делать на нем что-то большое, для этого есть контроллеры ступенькой выше.
(а 1200 прекрасно живет с ними как распределенная интеллектуальная периферия. По идеологии IM151-7/8 только дешевле. Это я тоже уже делать умею)
no subject
1500 мне пока понравился. Но 85 пидов (родных, библиотечных) ни в 200 мс, ни в другом прерывании не потянул. Тут независимо от периода получается превышение времени цикла. Пришлось разбивать на группы.
Отсутствие STL меня тоже не может не расстроить. Мне (в силу привычки) на нём уже проще писать, чем на SCL :)
Что насчёт ET200S CPU (151-7/8), так сейчас ET200SP дешевле, если не ошибаюсь.