Колеги ,всем большое спасибо, у меня все получилось! Хороших Вам выходных!
Вид для печати
Колеги ,всем большое спасибо, у меня все получилось! Хороших Вам выходных!
Здравствуйте создал проект на одном компьютере, теперь запускаю его на другом,но почему-то вкладки как на первом не появляются как правильно запускать проект Вложение 86840 Вложение 86841
Внизу слева переключение Ресурсов или POU (программы) Вложение 86843 а так же Типы данных (Структуры) и Визуализация
Спасибо, нашёл, а как скопировать конфигурация плк,у меня в папке еще несколько файлов файл с каким расширением за это отвечает
Дело в том,что я открываю тот же проект но в нем не отображается ничего как в него импортировать данные
Если ничего не отображается, значит у вас не установлены Таргеты или биб-ки. Лучше поставить всё сразу.
Биб-ки можно установщиком + нужные отдельно.
https://owen.ru/product/codesys_v2/service_po
Спасибо, у меня ПЛК 160, но старый не М02 где скачать библиотеки на него,или они одинаковые у обоих версий
И можно пожалуйста ссылку на таргеты
Как я понял мне нужно указать путь на файлы,какие из этих файлов отвечают за конфигурацию библиотеку и тВложение 86845д
Вложение 86846 вот сами файлы
Ссылка выше, таргеты скачайте и 2.12 и 3.3, ставьте все, на видео 2 вариант установки
там же биб-ки с установщиком. Ставьте всё по умолчанию ничего не меняя.
и видео по установке таргетов https://rutube.ru/video/e84618665bfe...ea30db24f4fcf/
Добрый день
Необходимо считывать объем из расходомера Взлет ЭРСВ-541П АВ. На картинке приведен фрагмент карты регистров. Вопрос - что такое Логический MB адрес ?
3 в начале, InputRegister, функция 4. Далее адрес регистра, возможно надо будет прибавить 1 к нему. Опытным путем.
Signed Long тут 32-х битная (4 байта) переменная со знаком.
Есть логический адрес MB - это адрес от 40_001 (или 400_001 - бывают варианты) и выше, а есть простой - от 0 и выше, но с обязательным добавлением, что читать функцией 3, а записывать функцией 6.
Если запись 40_001, то набор функций сразу подразумевается и в отдельном уточнении не нуждается.
Физически это одни и те же адреса, но вот записи в таблице - разные.
В Вашем случае адреса 300_001 и выше - это означает, что им соответствуют адреса 0 и выше и функции чтения 4 и записи (не помню - посмотрите в справке).
Например, логическому 316388 соответствует адрес регистра 16387 и функция чтения 4, а записи - не помню.
Возможно, я неправильно понял название параметра...
В таблице параметру "Объем прямого направления потока в формате float" соответствует логический адрес 332773 (для удобства чтения разделю разряды 332_773).
Этому адресу соответствует регистр 32772 (32_772) и функция чтения 4.
Не знаю, где об этом читать - мне встречалось только в обсуждениях на форуме и в популяризаторских статьях.
Пришлось просто запомнить.
Недавно настраивал прибор контроля вибрации Bently-Nevada 3500, адреса в документации задавались в формате 40_001+. Пришлось экспериментом уточнять, что это функция 3 и адреса нужно пересчитать от 0.
А ранее встречал и реальные адреса регистров 40_000+ без пересчёта - ведь в размер word они умещаются.
Нет 100% уверенности в каждом отдельном случае.
Но для адресов, которые явно не поместятся в word (превышают 65535) - как в Вашем случае - можно точно сказать и пересчёт и функцию.
Скорее всего, так и есть, но я бы проверил чтением после протекания нескольких куб.м.
Невероятно, но вдруг - эти регистры показывают одно и то же, но в разных форматах - как аналоговые сигналы из модулей ввода - есть и целые, есть и float значения, но это одно и то же.
В таблице написано, что дробная и целая части читаются отдельно да еще в разных форматах.
Теперь вопрос - сможет ли ПР205 прочитать целое число в формате signed long ? Или придется читать 2 регистра целой части, 32770 и 32771, а потом их склеивать и преобразовывать в float. Может кто-то это уже делал ?
У ПР только целое беззнаковое 32 бит, надо его принять и прогнать через функцию доп кода DINT_TO_FLOAT
Функции FLOAT_TO_INT и INT_TO_FLOAT на ST____ https://owen.ru/forum/showthread.php...821#post429821
Выводить в ПР придётся по отдельности До запятой и после запятой
ПР205 не сможет, если не умеет работать с double (8 байт). У float просто тямы не хватит сохранить целую часть через некоторое время, когда у счётчика будет в целой части значение больше, чем может переварить float.
Ну, можете извращаться и клеить или транслировать в том же виде дальше.
Целая часть int это 2 лярда с лишним, наверное раньше пр сдохнет или сам взлет :)
Дважды уже написал
10 знаков до и 6 -7 после запятой Вложение 86855
Если задача только выводить на дисплей ПР205, то можно вывести целое, затем ".", затем float умножить на 1_000_000, преобразовать в целое и вывести с лидирующими нолями.
Обычный флоат, максимум 7-8 знаков или до или после запятой, для большего кол-ва знаков нужен LFloat ( 4 регистра), чего в ПР и в ПЛК110 нет.
больше 8 знаков будут нулями (что в расходе не допустимо)
Поэтому и делают целым до запятой и Float после запятой, итого 17 знаков.
Здесь пытались вывести DOUBLE ( LFloat ) как REAL (Float ) , получилось всего 8 знаков.
https://owen.ru/forum/showthread.php...l=1#post472259
Как понимаю, этот "объём прямого направления потока" - не текущее значение расхода, а накопленное с момента включения прибора в работу.
Для такого параметра, скорее всего, применение - или оплата израсходованного ресурса по тарифу, или какая-то статистика в конце смены. Т.е. реально используется разность с предыдущим зафиксированным значением. Тогда можно и после всех вычитаний и учёта заёма из "целых" при вычитании "дробных" - приводить результат к единому float, т.к. разность будет уже не столь значительна по числу точных знаков.
Смотрите, что получается Расход в целых 123456789- 123456784= 5 кубов Вложение 86863
Расход с плав. точкой, ввожу 123456789 округляется до 123456790
ввожу 123456784 округляется до 123456780,
123456790-123456780= 10 кубов, а показывает 8.
Офигенно считает, 5 по факту, насчитал 8, а должно быть 10.
Это 9 знаков.
При 10 знаках, разницы уже нет совсем, расход 0 Вложение 86866 в целых те же 5 кубов
И это всего 10 знаков, что будет если знаков 15, +/- 1000 кубов влёт
IVM куда вам дальше? Поступите так же, как во взлете, даже 1 регистр можете сэкономить, представив дробную часть целым числом.
Мне показалось, что целая часть объёма меняется в полном 31-разрядном диапазоне 0...2*10^9.
А дробная - в диапазоне от 0.000000000 до 0.9999999999.
Поэтому пример будет несколько иным:
- предыдущее 999999123 и 0,123
- текущее 999999234 и 0,023
= разность 999999234-999999123=111 и 0,023-0,123=-0,100
выполняем заём из разряда целых 111-1=110 и прибавляем этот заём к дробным -0,100+1,000=+0,900
итого 110 и 0,900 т.е. 110,900 - такое число почти без погрешности поместится в float с его 24 битами мантиссы (2^24=16777215 - 7-8 точных цифр).