Доброго времени суток!
Наверно уже все уважающие себя господа перешли на СП-300+, ну а мы тут займемся некрофилией с СП-270 (думаю, от них еще далеко не все избавились).
Появилась необходимость выгружать тренды с СП-270, но так как "по хорошему" эта возможность там не реализована, пришлось пилить костыль.
В то время, когда к порту PLC подключены модули, к порту Download подключаемся кабелем, распаянным под RS-232, и обязательно перемыкаем контакты 6 и 5 между собой, это переключит СП-270 в режим отдачи информации, более того, переключит только после перезагрузки панельки. И порт Download должен быть в режиме Slave по ModBus RTU, иметь какой-то адрес. Обратная процедура аналогична, если хотим прошить панель, то придется ее снова перезагрузить.
С помощью преобразователя RS232-USB подключаемся к компьютеру. Открываем приложение (которое приложено в виде исходников, надо лишь скомпилировать и запустить), настраиваем параметры ModBus как на панельке, открываем порт. Тут важно раскрыть один камень преткновения.
На СП-270 доступно записывать тренды в совокупности до 1000000 точек. Тренды пишутся в память PFW, и на каждую точку тренда приходится 7 регистров: первые 6 (год,месяц,день,час,минута,секунда), а далее идет значение самой точки. Если на графике более одного тренда, то к 6 регистрам прибавляем N, где N - кол-во трендов в графике. Итого минимум 7000000 регистров доступно в памяти для чтения. НО! Протокол ModBus не предусматривает адресацию больше 65536 регистров! Следовательно нужно сделать на панели для каждого тренда кнопку, которая при нажатии будет копировать тренд в участок памяти до 65536 регистров. Она у нас чисто для скачивания трендов. Более того, тренды могут быть длиннее и не влезут в данный участок памяти, так что копирование и скачивание надо делать по частям (у меня это всё реализовано).
Такие дела. Неудобно конечно, но зато тренд скачается.
Приложение скачивает циклично точку за точкой и в конце переводит полученный массив в CSV файл, в виде столбца времени и значений тренда, что удобно для дальнейшего построения в виде графика в екселе.
Приложение выполнено на основе простой программы для передачи регистра по ModBus, в среде Visual Studio 2012 на языке C#. Почти все моменты закомментированы, буду рад, если кому-то облегчу жизнь данным костылем.
Скрипт для кнопок в СП-270 приведу ниже