PDA

Просмотр полной версии : Зависает ПЛК207 - AlarmConfiguration с AlarmStorage



Wladimir_tmk
18.03.2014, 15:19
Уважаемые коллеги.
Столкнулся с такой проблемой:
Использую ПЛК207.03.CS.WEB, Codesys v3.5 SP4.
Всё работает нормально, пока не активировано сохранение алармов в AlarmStorage.
Контроллер работает до возникновения события, которое должно быть записано в файл БД sqlite3.
После этого по логу консоли видно, что в Linux'е пишет:

sched: RT throttling activated,

потом активируется oom-killer

dropbear invoked oom-killer: gfp_mask=0x201da, order=0, oom_adj=0, oom_score_adj=0

, который, как следует из его описания, при нехватке виртуальной памяти выбирает
самый плохой/ненужный процесс и убивает его для освобождения памяти.
И конечно он выбирает именно codesyssp

Out of memory: Kill process 527 (codesyssp) score 833 or sacrifice child
Killed process 527 (codesyssp) total-vm:58848kB, anon-rss:24900kB, file-rss:28652kB

Т.е. CodeSys "самоликвидируется".
После этого контроллер "висит", хотя Linux в консоли и продолжает работать.

Причём файл БД успешно сохраняется при этом, хотя и с пустыми таблицами.
Пробовал указывать в качестве места для хранения AlarmStorage и внутреннюю память и USB- диск и SD- карту
- результат один и тот же.
Подскажите, что я делаю не так?
Где проблема: в Codesys, target или в прошивке СПК207?

Во вложениях :
log.txt - лог консоли Linux
Архивация.Jpg - скриншот - установлена галочка "Архивация" для "Warnings" и только для них, для "Errors" и "Info" она не установлена и с последними проблем нет.
AlarmGroup.jpg -скриншот - "Warning", ID 25 - проблеммный.
AlarmStorage.jpg -скриншот - сконфигурирована Субдиректория для БД - пробовал каталог в ПЛК и symbolink на SD card - результат один.

Serge95
22.03.2014, 10:15
Проверено на 2-х контроллерах СПК207- проблема повторяется

Serge95
01.04.2014, 21:00
Что то поддержка owen никак не реагирует на проблему. Отправил в поддержку ссылку на эту тему по e-mail. Письмо прочли - пришло подтверждение о прочтении, а в ответ тишина...При таком отношении к клиентам, что то желание пропадает работать с этой "продукцией"

Трофимов Артем
02.04.2014, 14:22
скажите пожалуйста, какая стоит прошивка на Вашем СПК?

Wladimir_tmk
02.04.2014, 16:55
скажите пожалуйста, какая стоит прошивка на Вашем СПК?

Версия прошивки 3302
Таргет 3.5.3.0

Мурат Ахриев
04.04.2014, 13:17
Ответ в данной ветке форума http://www.owen.ru/forum/showthread.php?t=16942&p=134947&posted=1#post134947

Serge95
10.04.2014, 18:22
Рабочий пример из указанной ветки действительно работает, но проект, который изначально создавался в Codesys версии 3.5 SP3 Patch 5
всё равно виснет при компиляции хоть в Codesys версии 3.5 SP4 Patch 1, хоть в Codesys версии 3.5 SP4 Patch 2.
Пробовал экспортировать проект в файл, потом импортировать его в новый пустой проект - ничего не помогает - всё равно oom-killer
делает своё чёрное дело если включить архивацию. Что уже только не делал- ничего не помогает.
Более того, если в своём проекте удаляю весь блок Alarm'ов, создаю заново и даже не ставлю галочку "Архивация", тогда CodesysSP слетает когда нажимаю кнопку "История".
Неужели весь проект надо снова вводить ручками в пустой проект в новой версии Codesys.
Не факт, что поможет. Тестовый пример занимает меньше памяти, может поэтому и работает?
При генерации кода пишет типа : "...самый большой промежуток памяти ...(33%)", тогда как в моём проекте только"....(16%)"
Не знаю уже, что предпринять (
Я же не пишу на ассемблере программу, а использую среду разработки высокого уровня, имхо даже если я что-то делаю не так, то это не должно приводить к вылетанию среды исполнения.
Тут явный косяк, только не знаю чей : немцев или Овена.

Мурат Ахриев
11.04.2014, 14:28
>Я же не пишу на ассемблере программу, а использую среду разработки высокого уровня, имхо даже если я что-то делаю не так, то это не должно приводить к вылетанию среды исполнения.

Вы совершенно правы, это не нормальное поведение.
На данный момент проблема исследуется.

>Неужели весь проект надо снова вводить ручками в пустой проект в новой версии Codesys.

Попробуйте импортировать только программные блоки и визуализацию

>Не факт, что поможет. Тестовый пример занимает меньше памяти, может поэтому и работает?

Аналогичный тестовый проект созданный в CDS 3.5.3 Patch 5 зависает