Приветствую.
Есть в эксплуатации система PCS7 на базе резервированного контроллера CPU 414H, в которые воткнуты модули памяти Flash-Eprom по 32Мб каждая. Да, я в курсе, что это не совсем в идеологии PCS7, но узнал об этом поздновато, когда система нам уже была сдана и проблема уже проявилась.
В данных контроллерах Load Ram всего по 512 кб, и так уж получилось, что программа несколько больше по размеру. Несколько раз загружали изменённую программу, где все модифицированные модули помещались в 512 кб Load Ram, и всё было ОК, но однажды лафа закончилась, инженерный софт грузить модули напрямую отказался, предложив сделать загрузку во Flash через поочерёдный перезапуск контроллеров. В общем, не рискнули мы на такой эксперимент - оставили до останова предприятия, и вот останов уже скоро и надо будет это дело сделать.
Вопрос, собственно: есть в PCS7 какие-то особенности загрузки во Flash память контроллеров? Как утверждал разработчик, что-то у него с поочерёдным перезапуском на автомате не получилось, и в итоге он грузил на Flash основного контроллера, останавливал, менял флешки контроллеров местами, после чего грузил во второй.
- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Загрузка в резервированный контроллер с FLASH-EPROM
Модератор: Глоб.модераторы
-
- администратор
- Сообщения: 4909
- Зарегистрирован: 25 июл 2008, 07:12
- Имя: Диев Александр Васильевич
- Страна: Россия
- город/регион: г. Сегежа, Карелия
- Благодарил (а): 236 раз
- Поблагодарили: 425 раз
Загрузка в резервированный контроллер с FLASH-EPROM
Повторное использование кода не отменяет повторного использования мозга при его повторном использовании.
-
- администратор
- Сообщения: 4909
- Зарегистрирован: 25 июл 2008, 07:12
- Имя: Диев Александр Васильевич
- Страна: Россия
- город/регион: г. Сегежа, Карелия
- Благодарил (а): 236 раз
- Поблагодарили: 425 раз
Загрузка в резервированный контроллер с FLASH-EPROM
Апну тему. Похоже, в воскресенье её никто не увидел...
Повторное использование кода не отменяет повторного использования мозга при его повторном использовании.
-
- авторитет
- Сообщения: 802
- Зарегистрирован: 12 авг 2008, 11:05
- Имя: Патрушев Олег Валерьевич
- Страна: Россия
- город/регион: г. Н.Новгород
- Благодарил (а): 110 раз
- Поблагодарили: 158 раз
Загрузка в резервированный контроллер с FLASH-EPROM
Ну почему, видели, а вот сказать что то не особо есть.
Что там не получилось у разработчика непонятно. Непонятно зачем вообще взяли флеш. Я понимаю, что менять батареи вовремя тоже надо следить, но отладку же PCS7 зарубит. Неудобно. Хотя если тех. процесс прямо совсем стабилен и не меняется...
Вроде я встречал абзац в документации про упоминание флеш, как раз в контексте, что если менять совсем ничего не надо, но не нашел.
Но я бы взглянул на процесс загрузки, будь вы поближе, для общего развития.
Если не сложно, напишите пару строк после события.
Нет таких особенностей, так как PCS не должен работать с флеш (это не значит, что не может). Соответственно в документации ничего и нет, и не проверялось. Загрузка через CFC (как должно быть в последних версиях) невозможна (я не пробовал флеш, а в 410-5 цпу и слотов то нет). Отсюда загрузка через степ7, и, так как это 400, то только всей программы через останов или прямо на карточку программатором (опять же через останов/сброс в момент вставки карты). Читать надо документ о работе с флеш на 400. У вас два ЦПУ - отсюда по очереди. Я бы слил программу и данные прямо с цпу и залил программатором на карту (но это не ваш случай, так как вам ее еще надо туда залить).
Что там не получилось у разработчика непонятно. Непонятно зачем вообще взяли флеш. Я понимаю, что менять батареи вовремя тоже надо следить, но отладку же PCS7 зарубит. Неудобно. Хотя если тех. процесс прямо совсем стабилен и не меняется...
Вроде я встречал абзац в документации про упоминание флеш, как раз в контексте, что если менять совсем ничего не надо, но не нашел.
Но я бы взглянул на процесс загрузки, будь вы поближе, для общего развития.
Если не сложно, напишите пару строк после события.
-
- администратор
- Сообщения: 4909
- Зарегистрирован: 25 июл 2008, 07:12
- Имя: Диев Александр Васильевич
- Страна: Россия
- город/регион: г. Сегежа, Карелия
- Благодарил (а): 236 раз
- Поблагодарили: 425 раз
Загрузка в резервированный контроллер с FLASH-EPROM
Вообще история примерно такая: когда-то весьма давно (лет так 15-20 назад) автоматизировали этот объект, сделали это на Симатиках CPU414 нерезервированных (2 отдельных контроллера на разные участки). Объект - водогрейная котельная, держать там нерезервированные контроллеры не очень хотелось (ибо чуть-чуть страшно), и мы заказали обновление системы. Обновление практически полное, т.к. меняли и голову, и ввод/вывод, и операторские вместо двух одиночных сделали с выделенным резервированным сервером и клиентскими станциями. Насчёт всего остального (собственно алгоритмов управления) мы разработчиков попросили перенести проект на новую версию без изменений. Ну так вот у старых разработчиков зачем-то были поставлены флешки, а новые за ними это дело повторили. Причём не сэкономили вообще нифига: на контроллеры с 4 Мб суммарным ОЗУ поставили по 32 Мб флеша. Поставить по 4 Мб RAM + батарейки было бы уж точно не дороже и хватило бы за глаза.
До тех пор, пока объём изменённых модулей при загрузке не превышал 512 кб Load Ram memory внутри контроллеров, загрузка нормально работала напрямую через CFC. И вроде как отладка тоже работает (хотя вроде бы не должна). Но понадобилось один сигнал перенести на другой канал - и уже всё, объём изменённых модулей больше и CFC отругался на то, что загрузить напрямую не может, надо ему грузить поочерёдно в разные контроллеры с перезапуском.
Разработчику писали на эту тему, просили в рамках гарантии поменять, но они в ответ сослались на ранее согласованную спецификацию, в которой прописан флеш. Вот как-то так. Заказчик должен разбираться в новой системе не хуже, чем разработчик :).
До тех пор, пока объём изменённых модулей при загрузке не превышал 512 кб Load Ram memory внутри контроллеров, загрузка нормально работала напрямую через CFC. И вроде как отладка тоже работает (хотя вроде бы не должна). Но понадобилось один сигнал перенести на другой канал - и уже всё, объём изменённых модулей больше и CFC отругался на то, что загрузить напрямую не может, надо ему грузить поочерёдно в разные контроллеры с перезапуском.
Разработчику писали на эту тему, просили в рамках гарантии поменять, но они в ответ сослались на ранее согласованную спецификацию, в которой прописан флеш. Вот как-то так. Заказчик должен разбираться в новой системе не хуже, чем разработчик :).
Повторное использование кода не отменяет повторного использования мозга при его повторном использовании.
-
- администратор
- Сообщения: 4909
- Зарегистрирован: 25 июл 2008, 07:12
- Имя: Диев Александр Васильевич
- Страна: Россия
- город/регион: г. Сегежа, Карелия
- Благодарил (а): 236 раз
- Поблагодарили: 425 раз
Загрузка в резервированный контроллер с FLASH-EPROM
А вот кстати вопрос по этой системе. Некоторые сигналы там стали не нужны: изменение технологии - вырезаны трубопроводы, сняты датчики, но чарты в проекте остались. Если я их просто удалю из проекта и перекомпилирую - соответствующие модули тоже удалятся, размер программы в контроллере станет меньше? Или их надо как-то по-другому удалять?
Повторное использование кода не отменяет повторного использования мозга при его повторном использовании.
-
- авторитет
- Сообщения: 802
- Зарегистрирован: 12 авг 2008, 11:05
- Имя: Патрушев Олег Валерьевич
- Страна: Россия
- город/регион: г. Н.Новгород
- Благодарил (а): 110 раз
- Поблагодарили: 158 раз
Загрузка в резервированный контроллер с FLASH-EPROM
Если бы вы грузили через CFC - то да, все удалилось бы само. В вашем случае - не представляю, изменения же должны в RAM загрузочную пойти, а тут как?
-
- администратор
- Сообщения: 4909
- Зарегистрирован: 25 июл 2008, 07:12
- Имя: Диев Александр Васильевич
- Страна: Россия
- город/регион: г. Сегежа, Карелия
- Благодарил (а): 236 раз
- Поблагодарили: 425 раз
Загрузка в резервированный контроллер с FLASH-EPROM
А как тут через CFC грузить, если чарт удалён? Другой чарт открыть и грузить из него? Оно как бы и так в Load RAM грузится, которого 512кб в контроллере есть.
Повторное использование кода не отменяет повторного использования мозга при его повторном использовании.
-
- авторитет
- Сообщения: 802
- Зарегистрирован: 12 авг 2008, 11:05
- Имя: Патрушев Олег Валерьевич
- Страна: Россия
- город/регион: г. Н.Новгород
- Благодарил (а): 110 раз
- Поблагодарили: 158 раз
Загрузка в резервированный контроллер с FLASH-EPROM
Когда откомпилируете все ненужное удалиться. И будет загружена консистентная программа (не важно что грузить - изменения или всю).
Ненужное будет удалено из памяти (рабочей и загрузочной РАМ). В вашем случае - не знаю как это будет выглядеть. Удалить с флеш CFC точно не сможет.
Ненужное будет удалено из памяти (рабочей и загрузочной РАМ). В вашем случае - не знаю как это будет выглядеть. Удалить с флеш CFC точно не сможет.