autopilot
Junior Member / Новичок
Участник № / Member № 2844
отправлено / posted
Собственно что накопалось тут на днях... TM6.05.1
1. В навигаторе проекта не сохраняется редактирование имен узлов/групп каналов. Изменения возможны только при вызове свойств узла/группы. Неудобно... Тем более что редактирование из навигатора похоже предусмотрено.
2. Отчет тревог. Игнорируются все первые пустые строки из словаря сообщений. Например нужно выводить сообщения при установке только третьего бита в слове. Есть канал HEX16 и для него определен индекс аварийного словаря. Все строки до третьего бита пустые с категорией <_> Невидимое На снятие третьего бита пишем сообщение "Отключен", на установку третьего бита пишем "Включен". А теперь поиграемся с битом 0 и битом 3 этого канала. На бит 0 пишутся введенные нами сообщения, на бит 3 естественно нет.
Все то же самое происходит если поставить галку "Вид представления DEC" и в словаре оставить пустыми первые строки и попытаться назначить сообщения на значение больше 1 (2,3 и т.д.).
3. Периодически не работает остановка звука. Посылка нуля в @Sound_File не останавливает воспроизведение.
Сообщения / Posts 14 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
1. Сохраняется. Только что специально проверили. 2. Пришлите, пожалуйста, тестовый пример с данной ошибкой на hotline3@adastra.ru 3. Возможно ОС не успевает обрабатывать сигнал из-за его кратковременности. Попробуйте подавать более длительный импульс.
Сообщения / Posts 17316 | Из / From: Россия
| IP / IP: IP адрес / IP address |
autopilot
Junior Member / Новичок
Участник № / Member № 2844
отправлено / posted
1. Ну да... Точно. Надо только Enter нажать. Просто по привычке изменил одно и кликаю на следующее имя. Каналы так переименовываются, а тут Enter обязателен.
2. Отправил.
3. Может что не так делаю... Последовательность: - Создаю Источники/Приемники -> Диагностика и сервис -> Системные -> @Sound_File. Параметр = 3. - Перетаскиваю @Sound_File в узел и называю канал Alarm - Посылаю в Alarm_In единицу. Играет 1.wav из папки узла. - Посылаю в Alarm_In ноль. Воспроизведение затыкается на доли секунды и продолжает воспроизводится.
Какой импульс куда подать ?
Для себя решил проблему созданием wav без звука длительностью 2 секунды с именем 100.wav. И вместо нуля пишу в Alarm_In 100. Но это же неверно.
Сообщения / Posts 14 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
2. В вашем случае виновата не категория <_>Невидимое, а то что Вы оставляете строку пустой. Если Вы не хотите, чтобы она отображалась, надо перед текстом поставить @.
autopilot
Junior Member / Новичок
Участник № / Member № 2844
отправлено / posted
2. Да я понимаю, что виновата пустая строка. Я выше писал "Игнорируются все первые пустые строки из словаря сообщений". Только в документации не сказано что "нельзя оставлять строки пустыми". Да и в ТМ5 такого небыло. И если я пишу в словаре сообщение на установку/снятие определенного бита, оно должно писаться в отчет именно на изменения в этом бите независимо от строк выше. Лично я думаю, что так быть не должно, но вам как разработчикам виднее конечно...
3. В FBD в зависимости от определенных условий посылаю 1 или 0. FBD отрабатывает все правильно. Паралельно отсылал в другой канал и выводил его на экран для проверки. К сожалению четкой зависимости не прослеживается поэтому точного примера выслать не могу. Иногда срабатывает, иногда нет.
Сообщения / Posts 14 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
2. Если эти пустые строки находится в начале Словаря, то они игнорируются, и происходит смещение. Это ошибка, она будет исправлена. Поставьте вместо пустой строки @.
autopilot
Junior Member / Новичок
Участник № / Member № 2844
отправлено / posted
2. Да у себя я естественно учел эту "особенность". Отписался тут, чтоб в следующем релизе поправили.
3. Ну если была бы определенная закономерность и возможность воспроизвести эту ситуацию с вероятностью 100%, то я естественно выслал бы вам проект. Я же выше написал, что четкой зависимости я не нашел. Возможно все зависело от конкретного "железа", сейчас я проверить это к сожалению уже не могу.
Сообщения / Posts 14 | Из / From: Россия
| IP / IP: IP адрес / IP address |
autopilot
Junior Member / Новичок
Участник № / Member № 2844
отправлено / posted
Может уже обсуждалось, я не нашел.
Имеем следующее: Канал F (тип Float) и ГЭ Текст. В основных свойствах ГЭ Текст указано отображать значение канала F. В действиях на mousePressed добавлено Передать значение (Ввести и передать), источник канал F_R, результат F_In.
Запускаем профайлер, нажимаем мышкой на ГЭ Текст и вводим 0.01 -> Готово. Нажимаем повторно на ГЭ Текст и видим в поле ввода значение 0.00999999977648258. При этом на экране в ГЭ Текст отображается 0.01 как и положено. Такая ситуация с любыми числами.
отправлено / posted
Некоректности в работе кнопки связаны с неточностью округления числа типа Float из-за его представления в двоичной системе. Например, число 1.6 это на самом деле 1.60000002384186, а 1.3 - 1.29999995231628. Возможно в работу графики будет внесено огругление таких чисел.
Сообщения / Posts 17316 | Из / From: Россия
| IP / IP: IP адрес / IP address |