Траблы с памятью. Wago 750-815 |
Ответить |
Автор | |
Новичок Присоединился: 09 Январь 2012 Online Status: Offline Публикации: 2 |
Опубликовано: 09 Январь 2012 08:35 |
Попался мне тут недавно сей контроллер(как же я не люблю эти старые версии, но не суть). И после загрузки программы (размер где-то 10 кб.) у меня в памяти какие-то странные наборы 0 и 1. после принудительного обнуления, произошло кажущееся просветление, но! в некоторых регистрах все равно лежат данные. причем в одном даже нарастающие. обнулить принудительно я их не могу. Данные лежат где-то в %mw400-%mw410. это точно. дальше не искал так как не до того было.
Может кто знает где собака зарыта?
|
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 14 Май 2003 Online Status: Offline Публикации: 770 |
|
Это не могут быть данные вашей же программы?
1. Объявлены ли RETAIN переменные? 2. Что у вас в Target settings -> Memory options? |
|
Инженер-системотехник
+7 (916) 477 3925 |
|
Новичок Присоединился: 09 Январь 2012 Online Status: Offline Публикации: 2 |
|
Данные программы точно нет. В симуляции этих данных нет. Да и прога уже давно отлажена на других контроллерах.
1. Переменные все Retain. хотя у меня подозрение, что в старых версиях ваги это необязательно. данные не пропадали даже когда были просто var. 2. в io-pro 32 я что-то такого не нашел.
|
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 14 Май 2003 Online Status: Offline Публикации: 770 |
|
Я уж и забыл, что для этих контроллеров нужна I/O-PRO 32... Вопрос о Memory options снимается.
Помню, ваговцы предупреждали, что не следует использовать M-переменные одновременно с RETAIN. Потому что физически они лежат в одной и той же области памяти, и RETAIN переменная может попасть в один из M-адресов. То есть, либо писать VAR X AT %MW0: INT; либо VAR RETAIN X: INT; |
|
Инженер-системотехник
+7 (916) 477 3925 |
|
Участник Присоединился: 13 Апрель 2004 Online Status: Offline Публикации: 58 |
|
Максим, а вот так можно?
VAR X AT %MW0: INT; VAR RETAIN Y AT %MW1: INT; X в Y не попадет? И еще вопрос: Есть ли ограничения на количество циклов перезаписи для Retain памяти? Можно ли в ней держать часто меняющиеся переменные? |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 14 Май 2003 Online Status: Offline Публикации: 770 |
|
Нет, X в Y не попадет в данном случае, ведь адрес явно указан. Просто, насколько я понимаю, слово RETAIN здесь лишнее, оно не даст никакого эффекта. В общем, предлагаю вам указать для каждой RETAIN переменной явный адрес, и убрать раздел VAR RETAIN. Напишите, поможет ли это.
В область памяти для RETAIN переменных можно писать сколь угодно часто. Дело в том, что содержимое этой области сохраняется в энергонезависимой памяти лишь в случае отключения питания. |
|
Инженер-системотехник
+7 (916) 477 3925 |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 14 Май 2003 Online Status: Offline Публикации: 770 |
|
Внимание, совет не использовать одновременно RETAIN и %M касается только WAGO-I/O-PRO 32. В Codesys 2.3 (WAGO-I/O-PRO CAA) поведение RETAIN и %M переменных задается в Memory Options.
|
|
Инженер-системотехник
+7 (916) 477 3925 |
|
Действительный член Присоединился: 24 Декабрь 2004 Online Status: Offline Публикации: 321 |
|
у меня недавно была проблемма похожая, но на PromPC 758-870 и 876, там многие адреса М памяти стояли в единичке и ни какие попытки сброса не давали результата, помогла прошивка свежей версии фирмВаре через CF карту.
|
|
Новичок Присоединился: 04 Июнь 2012 Online Status: Offline Публикации: 14 |
|
А можно ли программу написанную на разных языках (CFC, ST, FBD, IL) в CoDeSys как нибудь преобразовать в один язык к примеру чтоб вся программа и функциональные блоки были в ST ?
Спасибо за вниманиею
|
|
Ответить |
Переход на форум | Права доступа на форуме Вы не можете публиковать новые темы в этом форуме Вы не можете отвечать на сообщения в этом форуме Вы не можете удалять Ваши сообщения на этом форуме Вы не можете редактировать Ваши сообщения на этом форуме Вы не можете создавать голосования на этом форуме Вы не можете выражать своё мнение в голосованиях на этом форуме |