sauer danfoss s1x 46 g2 amp k164c коды ошибок
Коды ошибок частотника Danfoss VLT® Micro Drive FC 51
Преобразователь частоты контролирует состояние питающего напряжения, входных сигналов, характеристики двигателя, а также другие рабочие параметры системы. Частотник выдает ошибку, предупреждение или аварийный сигнал, но это не обязательно означает, что проблема связана с самим преобразователем частоты. Во многих случаях они могут оповещать о сбое, связанном с выходным напряжением, нагрузкой или температурой двигателя, внешним сигналам, или с другими параметрами, контролируемыми внутренней логикой преобразователя. При появлении аварийного или предупреждающего сообщения, проверьте внешние параметры, на которые указывает данное сообщение.
Типы сообщений
Бывает три типа сообщений, которые отображаются на панели индикации:
Предупреждения. Код сопровождается буквой W (warning). Выводятся в том случае, если контролируемый параметр приближается к аварийному пределу. Если ненормальное состояние будет сохраняться продолжительное время, то преобразователь перейдет в состояние аварии. Предупреждение сбрасывается автоматически, если причина устранена.
Аварийный сигнал. Код сопровождается буквами AL (alarm). В случае появления аварийного сигнала преобразователь частоты отключается для недопущения повреждения самого преобразователя или внешнего оборудования. Двигатель останавливается выбегом или другим выбранным способом. После того как причина аварии устранена, необходимо произвести сброс аварии для возможности повторного запуска.
Некоторые аварии приводят к блокировке преобразователя частоты. Для сброса таких аварий необходимо выключить входное питание, устранить причину неисправности, затем снова подать питание. Затем можно произвести сброс обычным образом. В списке ниже такие аварии обозначены как «аварии с блокировкой».
Ошибки. Код сопровождается буквой E (error). К таким состояниям относятся другие неисправности, которые не позволяют преобразователь частоты нормально работать.
Индикация
На панели присутствуют 3 индикатора, с помощью которых можно определить состояние преобразователя частоты:
On (зеленый светодиод). Питание преобразователя частоты включено.
Warn. (желтый светодиод). Обозначает предупреждение.
Alarm (красный светодиод мигающий). Обозначает аварийный сигнал.
Коды ошибок частотника VLT Micro Drive FC 51
AL2, W2 – Обрыв аналогового сигнала или низкий уровень сигнала. Проверьте сигнал на клемме 53 или 60. Уровень сигнала должен быть не ниже 50 % от значения, установленного в параметрах 6-10, 6-12 и 6-22.
AL4, W4 (*) – Пропадание фазы питания. Потеря фазы на стороне питания или слишком большая асимметрия напряжения питания. Проверьте напряжение питания. Авария с блокировкой.
AL7, W7 (*) – Перенапряжение в звене постоянного тока. Напряжение промежуточной цепи превышает предельно допустимое значение.
AL8, W8 (*) – Провал напряжения в звене постоянного тока. Напряжение промежуточной цепи падает ниже порога предупреждения о низком напряжении.
AL9, W9 – Перегрузка инвертора. Нагрузка превышает 100 % в течение длительного времени.
AL12 – Ограничение момента. Момент двигателя превысил уставку предельного крутящего момента. Проверьте параметры 4-16 и 4-17
AL13, W13 – Превышение тока. Превышен предел пикового тока инвертора. Авария с блокировкой.
AL14 – Пробой на землю. Замыкание выходных фаз на землю. Авария с блокировкой.
AL16 – Короткое замыкание. Короткое замыкание в двигателе или на его клеммах. Авария с блокировкой.
AL17, W17 – Тайм-аут командного слова. Нет связи с преобразователем частоты.
AL25 – Короткое замыкание тормозного резистора. Короткое замыкание тормозного резистора, в связи с чем функция торможения отключается. Авария с блокировкой.
AL27 – Короткое замыкание тормозного прерывателя (транзистора). Короткое замыкание тормозного транзистора, в связи с чем функция торможения отключается. Авария с блокировкой.
AL28 – Проверка тормоза. Тормозной резистор не подключен или не работает
AL29, W29 – Перегрев силовой платы. Радиатором достигнута температура отключения. Авария с блокировкой.
AL30 – Обрыв фазы U двигателя. Отсутствует подключение, плохой контакт или обрыв фазы U двигателя. Проверьте подключение выходных клемм, кабель и обмотку двигателя. Авария с блокировкой.
AL31 – Обрыв фазы V двигателя. Отсутствует подключение, плохой контакт или обрыв фазы V двигателя. Проверьте подключение выходных клемм, кабель и обмотку двигателя. Авария с блокировкой.
AL32 – Обрыв фазы W двигателя. Отсутствует подключение, плохой контакт или обрыв фазы W двигателя. Проверьте подключение выходных клемм, кабель и обмотку двигателя. Авария с блокировкой.
AL38 – Внутренняя авария. Обратитесь в наш сервисный центр или к поставщику преобразователей частоты фирмы Danfoss. Авария с блокировкой.
AL47, W47 – Сбой управляющего напряжения. Возможно, перегружен источник питания 24 В=. Авария с блокировкой.
AL51 – ААД: проверить Unom и Inom. Неправильно установлены значения напряжения, тока и мощности двигателя.
AL52 – ААД: мал Inom. Слишком мал ток двигателя. Проверьте настройки.
W59 – Предел по току. Перегрузка привода VLT
AL63 – Мала эффективность механического тормоза. Фактический ток двигателя не превышает значения тока “отпускания тормоза” в течение промежутка времени “задержки пуска”.
AL80 – Привод приведен к значениям по умолчанию. Все значения параметров установлены в соответствии с настройками по умолчанию.
E84 – Утрачено соединение между приводом и LCP
E85 – Кнопка не действует
E86 – Копирование не выполнено
E87 – Данные LCP недопустимые
E88 – Данные LCP несовместимы
E89 – Параметр только для считывания
E90 – Нет доступа к базе данных параметров
E91 – В данном режиме значение параметра недействительно
E92 – Значение параметра превышает минимальный или максимальный пределы
* отказы AL4, AL7, AL8 могут вызываться искажениями сетевого питания. Установка сетевого фильтра поможет устранить эту проблему.
Сброс ошибки частотника.
Аварию можно сбросить одним из перечисленных способов:
Нажатие кнопки [Off/Reset]. В нормальном рабочем режиме кнопка используется для останова двигателя. В аварийном режиме произойдет сброс аварии. Если причины аварии устранены, то преобразователь перейдет в режим готовности к запуску.
Команда сброса с помощью цифрового (дискретного) входа. По умолчанию у преобразователя частоты на функцию сброса назначена клемм 27. С помощью параметров на функцию сброса можно назначить любой из входов.
Команда сброса для интерфейса последовательной связи. Эта функция возможна при использовании интерфейса для управления преобразователем частоты.
Автосброс. Эту функцию можно настроить с помощью параметров преобразователя частоты.
Если сброс описанными способами не произошел, то скорее всего причина аварии не устранена, или преобразователь частоты находится в состоянии аварии с блокировкой. Для сброса такой аварии необходимо выключить питание, дождаться отключения, затем устранить причину аварии и повторно включить преобразователь частоты. Не превышайте количество включений питания в час, которое описано в документации. Это может привести к выходу преобразователя частоты из строя.
Если вам не удалось разобраться с проблемой самостоятельно обращайтесь в наш сервисный центр. Квалифицированный инженер проведет диагностику неисправного преобразователя и отремонтирует его.
danfoss speed controll free download
Car wirings and schematics,automobile documentation, auto repair guides,car audio manuals, car stereo
File information: | |
File name: | danfoss.pdf [preview speed controll] |
Size: | 127 kB |
Extension: | |
Mfg: | danfoss |
Model: | speed controll 🔎 |
Original: | s1x-26 g2 amp k196c 🔎 |
Descr: | speed controller |
Group: | Electronics > Automobile |
Uploaded: | 20-10-2009 |
User: | huszak |
Multipart: | No multipart |
Information about the files in archive: | ||
Decompress result: | OK | |
Extracted files: | 1 | |
File name | Text | |
danfoss.pdf | S1X Mobile Microcomputer Technical Information 174 155 POWER SYSTEM 55,75 MODE STATUS 8,5 8,5 10 60,25 9 10 123,5 10,5 AMP Stecker AMP Connector 1 15 29 14 28 42 55 S1X Mobile Microcomputer Technical Information Overview DESCRIPTION The Sauer-Danfoss S1X Mobile Microcomputer is a digital electronic, designed for open loop as well as closed loop mobile off-road system applications. State of art controls in mobile applications driving rotary and linear actuators (hydrostatic transmissions, hydraulic cylinders etc.) are to be more flexible and intelligent. The robust design of the S1X digital electronic series provides best for this. The design provides the required performance for a mobile environment and high performance, 16 bit microcontroller provides the capability for future expansion. It is possible to load several software programs via RS232 interface for various series without any hardware change. This feature makes it possible for an unexperienced operator to use standa |
>> View document online >> Download document
User ratings and reviews for this file:
Вытаскиваем ПО из запароленного микроконтроллера Renesas M16C
Есть у меня знакомый, который занимается ремонтом автомобильного железа. Он как-то принес мне микроконтроллер, выпаянный из блока управления автономного отопителя. Сказал, что его программатор это не берет, а ему хотелось бы иметь возможность переливать прошивки туда-сюда, т.к. блоков много, в железе они часто одинаковые, а вот агрегаты, которыми они управляют отличаются. И вроде и блок есть взамен неисправного, но ПО разное и заменить просто так нельзя. Так как задачка была интересной, решил покопаться. Если тема интересна и вам, прошу под кат.
Подопытным оказался M306N5FCTFP. Это микроконтроллер группы M16C/6N5. Ядро M16C/60 разработано Mitsubishi, а т.к. преемником этой компании по части МК с 2003 года является Renesas, то сейчас эти микроконтроллеры известны именно под этим брендом.
Немного о самом микроконтроллере
Камешек представляет собой 16-разрядный микроконтроллер в 100-выводном QFP корпусе. Ядро имеет 1 МБайт адресного пространства, тактовая частота 20МГц для автомобильного исполнения. Набор периферии так же весьма обширный: два 16-разрядных таймера и возможность генерации 3-фазного ШИМ для управления моторами, всякие UART, SPI, I2C естественно, 2 канала DMA, имеется встроенный CAN2.0B контроллер, а также PLL. На мой взгляд очень неплохо для старичка. Вот обзорная схемка из документации:
Так как моя задача выдрать ПО, то так же весьма интересует память. Данный МК выпускался в двух вариантах: масочном и Flash. Ко мне попал, как выше уже упоминалось, M306N5FCTFP. Про него в описании сказано следующее:
Как вытащить из устройства то, что разработчики втащили
Вполне естественно, что начинать попытки достать что-то из микроконтроллера нужно с изучения механизмов, которые встроены разработчиком чипа для задач программирования памяти. В мануале указано, что производитель любезно разместил в памяти загрузчик, для нужд внутрисхемного программирования устройства.
Как видно из картинки выше, память разбита на 2 части: пользовательская область, и область загрузчика. Во второй как раз с завода залит загрузчик по умолчанию, который умеет писать, читать, стирать пользовательскую память и общается через асинхронный, синхронный, либо CAN-интерфейс. Указано, что он может быть переписан на свой, а может быть и не переписан. В конце концов это легко проверяется попыткой постучаться к стандартному загрузчику хотя-бы через UART… Забегая вперед: производитель отопителя не стал заморачиваться своим загрузчиком, поэтом копать дальше можно в этом направлении. Сразу оговорюсь, что есть еще способ параллельного программирования, но т.к. программатора для этого у меня не было, я не рассматривал этот вариант.
Вход в режим работы загрузчика обеспечивается определенной комбинацией на входах CNVSS, P5_0, P5_5 во время аппаратного сброса. Дальше либо написать свою утилиту для копирования содержимого памяти, либо использовать готовую. Renesas предоставляет свою утилиту, которая называется «M16C Flash Starter», но функция чтения у нее урезана. Она не сохраняет прочитанное на диск, а сравнивает его с файлом с диска. Т.е. по сути это не чтение, а верификация. Однако есть немецкая свободная утилитка с названием M16C-Flasher, которая вычитывать прошивку умеет. В общем начальный инструментарий подобрался.
О защите от считывания
Все бы было совсем просто, если бы в загрузчике не была предусмотрена защита от несанкционированного доступа. Я просто приведу очень вольный перевод из мануала.
Функция проверки идентификатора
Используется в последовательном и CAN режимах обмена. Идентификатор, переданный программатором, сравнивается с идентификатором, записанным во flash памяти. Если идентификаторы не совпадают, команды, отправляемые программатором, не принимаются. Однако, если 4 байта вектора сброса равны FFFFFFFFh, идентификаторы не сравниваются, позволяя всем командам выполняться. Идентификатор — это 7 байт, сохраненных последовательно, начиная с первого байта, по адресам 0FFFDFh, 0FFFE3h, 0FFFEBh, 0FFFEFh, 0FFFF3h, 0FFFF7h, и 0FFFFBh.
Таким образом, чтобы получить доступ к программе, нужно знать заветные 7 байт. Опять же, забегая вперед, я подключился к МК, используя тот же «M16C Flash Starter» и убедился, что комбинации из нулей и FF не проходят и этот вопрос придется как то решать. Здесь сразу же всплыла мысль с атакой по сторонним каналам. Уже начал прикидывать в голове платку, позволяющую измерять ток в цепи питания, но решил, что интернет большой и большинство велосипедов уже изобретено. Вбив несколько поисковых запросов, довольно быстро нашел на hackaday.io проект Serge ‘q3k’ Bazanski, с названием «Reverse engineering Toshiba R100 BIOS». И в рамках этого проекта автор решал по сути точно такую же задачу: добыча встроенного ПО из МК M306K9FCLR. Более того — на тот момент задача им была уже успешно решена. С одной стороны я немного расстроился — интересная загадка разгадана не мной. С другой — задача превратилась из поиска уязвимости, в ее эксплуатацию, что обещало гораздо более скорое решение.
В двух словах, q3k точно по такой же логике начал изучение с анализа потребляемого тока, в этом плане он был в гораздо более выгодных условиях, т.к. у него был ChipWhisperer, этой штукой я до сих пор не обзавелся. Но т.к. его первый зонд для снятия тока потребления оказался неподходящим и вычленить из шумов что-то полезное у него не получилось, он решил попробовать простенькую атаку на время отклика. Дело в том, что загрузчик во время выполнения команды дергает вывод BUSY, чтобы проинформировать хост о том, занят он, или готов выполнять следующую команду. Вот, по предположению q3k, замер времени от передачи последнего бита идентификатора до снятия флага занятости мог послужить источником информации при переборе. При проверке этого предположения перебором первого байта ключа действительно было обнаружено отклонение по времени только в одном случае — когда первый байт был равен FFh. Для удобства измерения времени автор даже замедлил МК, отключив кварцевый резонатор и подав на тактовый вход меандр 666кГц, для упрощения процедуры измерений. После чего идентификатор был успешно подобран и ПО было извлечено.
Первый блин — граблями
Ха! Подумал я… Сейчас я быстренько наклепаю программку к имевшейся у меня STM32VLDiscovery c STM32F100 на борту, которая будет отправлять код и измерять время отклика, а в терминал выплевывать результаты измерений. Т.к. макетная плата с целевым контроллером до этого подключалась к ПК через переходник USB-UART, то, дабы ничего не менять на макетке, работать будем в асинхронном режиме.
Когда при старте загрузчика вход CLK1 притянут к земле, он понимает, что от него хотят асинхронного общения. Собственно потому я его и использовал — подтяжка была уже припаяна и я просто соединил проводами две платы: Discovery и макетку с целевым M306.
Заметка по согласованию уровней:
Т.к. M16 имеет TTL-уровни на выводах, а STM32 — LVTTL (упрощенно, в даташите подробнее), то необходимо согласование уровней. Т.к. это не устройство, которое, как известная батарейка, должно работать, работать и работать, а по сути подключается разок на столе, то с трансляторами уровней я не заморачивался: выходные уровни от STM32 пятивольтовый МК переварил, в смысле 3 вольта как «1» воспринимает, выходы от М16 подаем на 5V tolerant входы STM32 дабы ему не поплохело, а ногу, которая дергает RESET M16 не забываем перевести в режим выхода с открытым стоком. Я вот забыл, и это еще +2ч в копилку упущенного времени.
Этого минимума достаточно, чтобы железки друг друга поняли.
Логика атакующего ПО следующая:
В итоге, для всех значений результаты были идентичны. Полностью идентичны. Тактовая частота таймера у меня была 24Мгц, соответственно разрешение по времени — 41,6 нс. Ну ок, попробовал замедлить целевой МК. Ничего не поменялось. Здесь в голове родился вопрос: что я делаю не так, как это делал q3k? После сравнения разница нашлась: он использует синхронный интерфейс обмена (SPI), а я асинхронный (UART). И где-то вот здесь я обратил внимание на тот момент, который упустил вначале. Даже на схемах подключения для синхронного и асинхронного режимов загрузчика вывод готовности назван по-разному:
В синхронном это «BUSY», в асинхронном это «Monitor». Смотрим в таблицу «Функции выводов в режиме Standart Serial I/O»:
«Семён Семёныч…»
Упущенная вначале мелочь завела не туда. Собственно, если в синхронном режиме это именно флаг занятости загрузчика, то в асинхронном (тот, который serial I/O mode 2) — просто «мигалка» для индикации работы. Возможно вообще аппаратный сигнал готовности приемопередатчика, оттого и удивительная точность его поднятия.
В общем перепаиваем резистор на выводе SCLK с земли на VCC, припаиваем туда провод, цепляем все это к SPI и начинаем сначала…
Успех!
В синхронном режиме все почти так же, только не требуется никакой предварительной процедуры установки соединения, упрощается синхронизация и захват времени можно выполнить точнее. Если бы сразу выбрал этот режим сохранил бы время… Я снова не стал усложнять и измерять время именно от последнего бита, а запускал таймер перед началом передачи последнего байта ключа, т.е. включаем таймер и отправляем в передатчик KEY7 (на скриншоте выше, из логического анализатора, видно расстояние между курсорами. Это и есть отсчитываемый отрезок времени).
Этого оказалось более чем достаточно для успешной идентификации. Вот так выглядит перебор одного байта:
По оси абсцисс у нас количество дискрет счетчика, по оси ординат, соответственно, передаваемое значение ключа. Отношение сигнал/шум такое, что даже никаких фильтров не требуется, прямо как в школе на уроке информатики: находим максимум в массиве и переходим в подбору следующего байта. Первые 6 байт подбираются легко и быстро, чуть сложнее с последним: там просто наглый перебор не проходит, нужен сброс «жертвы» перед каждой попыткой. В итоге на каждую попытку уходит что-то около 400 мс, и перебор идет в худшем случае в районе полутора минут. Но это в худшем. После каждой попытки запрашиваем статус и, как только угадали, останавливаемся. Я вначале вообще просто быстренько ручками перебрал идентификатор, вставляя в excel вывод консоли и строя график, тем более, что это была разовая задача, но уже для статьи решил дописать автоматический перебор, ради красивой консольки…
Конечно, если бы разработчик затер загрузчик (заменил своим), так просто выкрутиться не получилось бы, но в автомобильной электронике частенько МК вообще не закрыты. В частности в блоке управления с другого отопителя, в котором был установлен V850 того же Renesas все решилось подпайкой пары проводов и копированием прошивки штатной утилитой. Это в мире ЭБУ двигателем целые криптовойны. Видимо не нравится производителям явление чип-тюнинга и других видов вмешательства… Хотя это как гонка брони и снаряда — железки круче, дороже, но победителя нет…