Господа! Можно ли запаковать строковые сетевые переменные (string, 80 байт) для передачи?
Вид для печати
Господа! Можно ли запаковать строковые сетевые переменные (string, 80 байт) для передачи?
А,если не секрет,зачем такие строки???
Вы поздравления отправляете??:)
Или распоряжение:"Взять лопату в подсобке , идти к забору и копать до обеда" (57 байт)
Пока что придумал так: на "передатчике" состояние присваивается определенной цифре с типом USINT. В "приёмнике" цифровому значению присваивается строка. 1 байт на одну переменную, вместо 80.
А , зачем такой тип Usint ??? Стандартный Word не подойдет???
Почему строки - понятно, в HMI CDS другого не предусмотрено,но если строковые значения фиксированные , то назначьте им цифровые "аватарки" :D(Прикольно да)и "гоняйте" по UDP 1-2 Worda , вместо строк по 80 символов.
Почему ? Индекс и массив строк - прямой аналог. И хоть usint, хоть dintЦитата:
в HMI CDS другого не предусмотрено,
Для udp - что 1-2 слова, что 80 байт. Накладные расходы - смешны. Если плющит - есть и string(20-30).
И в панель иногда бывает проще прямой текст загнать. Например при оперативном изменении имен режимов - не надо панель перегружать, к имени режима обратный отсчет добавить и т.д
В HMI CDS нету "Динамический текст".Поэтому для отображения "статуса" надо строку передавать.
Прямой текст проще загнать , только:
пример - отображается 6 статусов (Динамический текст) + один "Обратный отсчет) .Статусы в среднем 8 символов .
Для отображения строкой 6*8+3:=51байт. Если Wordами 6*2+2:=14байт . Есть разница???
Зачем так опрометчиво?
Читаем "codesys_visu_v23_ru.pdf"
http://s45.radikal.ru/i109/1306/fe/38e7a9dd537et.jpg
.................................................. ......................
http://s017.radikal.ru/i440/1306/79/c42dce4f3962t.jpg
.............................................
и т.д.
На страницах от 2-54 до 2-57 есть описание и пример реализации.:)
Да есть. 37 байт. Это целых 2-3мс. Это на RS. А на udp ? А с учетом минимального размера пакета ?
И вот кончился обратный отсчет для режима - и нуль на экране не нужен. Еще экран/макросы на панели ?
А вот у меня пяток полностью взаимозаменяемых панелей в пределах объекта, а операторы попросили поменять название режима "ОЖИДАНИЕ ЗАГРУЗКИ" на "ЖДЕМ ЗАГРУЗКУ". Все перезаливать ? Есть разница ?
Я же показал адекватную замену ему. Ну и полетит строка. В потоке информации проекта для HMI CDS она - пыль.
.... Да Petera предложил не хуже
Про HMI CDS попутал... Не пользовался им , только визуализацией в проекте для настройки (отсюда и ассоциация) .
По поводу строк и панели - Валенок , согласен с вами частично . Панели просто есть разные . Есть адекватные и шустрые , есть глючные и тормозные(не будем упоминать производителей).
Все варианты имеют право на жизнь, только у стартера проблемма с "тормозной" визуализацией и , возможно с "тормозным" обменом.Вот обмен и предлагается оптимизировать .
Если меня операторы попросят о подобной "фигне" (Переделка текста) - поставят 0.7 можно и перезалить , а нет... идите лесом...полем...камышом.