SIEMENS, DF&PD

Предыдущее посещение: Сб июл 09, 2016 10:34 Текущее время: Сб июл 09, 2016 10:34

Часовой пояс: UTC + 3 часа




 [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: Work Memory
СообщениеДобавлено: Пн дек 21, 2015 15:39 
Не в сети
Начинающий писатель

Зарегистрирован: Ср сен 02, 2015 22:43
Сообщения: 66
Подскажите Work Memory - это память карточки?
Если контроллер CPU 313C-2 DP, то какой размер карточки для него максимальный?
Спасибо!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Work Memory
СообщениеДобавлено: Пн дек 21, 2015 15:51 
Не в сети
Писатель со стажем

Зарегистрирован: Чт май 24, 2007 18:59
Сообщения: 617
Откуда: Екб
Aleks333777333 писал(а):
Подскажите Work Memory - это память карточки?
Если контроллер CPU 313C-2 DP, то какой размер карточки для него максимальный?
Спасибо!


"Память карточки" - это Load Memory (загружаемая память), а Work Memory - это память "рабочая", ее количество определяется моделью ЦПУ и никакой карточкой ее не добавишь..


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Work Memory
СообщениеДобавлено: Пн дек 21, 2015 17:55 
Не в сети
Начинающий писатель

Зарегистрирован: Ср сен 02, 2015 22:43
Сообщения: 66
А как можно её освободить эту Work Memory.
Дело в том что у меня контроллер не дает перезалить в него блок FС120. Пишет следующее:
(8301)"Insufficient memory space or work memory on the module or specified storage medium not accessible"
я глянул, а у него Work Memory - 99%
При этом Load Memory RAM+EPROM - 8 %/

Что делать? Как залить исправленный блок? Станок работает, накосячить боюсь!


Последний раз редактировалось Aleks333777333 Пн дек 21, 2015 17:58, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Work Memory
СообщениеДобавлено: Пн дек 21, 2015 17:56 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Пн фев 20, 2012 8:35
Сообщения: 1070
удали его из онлайна, потом залей. Естественно уйдет в стоп. Ну и памяти должно хватить, если много не добавлял


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Work Memory
СообщениеДобавлено: Пн дек 21, 2015 22:56 
Не в сети
Писатель со стажем

Зарегистрирован: Сб май 02, 2015 13:32
Сообщения: 941
Можно попробовать упорядочить размещение данных в памяти - аналогично как делают дефрагментацию на жёстком диске

https://support.industry.siemens.com/cs/document/2698524/what-should-you-do-if-there-isn't-sufficient-free-memory-capacity-in-the-plc-during-downloading?dti=0&dl=en&lc=ru-RU
Что делать, если нет достаточно ресурсов свободной памяти в ПЛК во время загрузки?
Цитата:
It might be necessary to reorganize and compress the RAM after frequent loading of blocks. This is necessary if the size of the largest coherent memory area is not enough to load a new object from the PG into the CPU.

The requirements is that an online connection to the CPU is set up. Proceed as follows:

Mark the S7 program in the online view or in the "Available users" window.
Select the menu command "Target system > Module status".
In the following dialog box select the "Memory" tab. In this tab there is a button for compressing the memory.
Изображение


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Work Memory
СообщениеДобавлено: Вт дек 22, 2015 8:11 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Вс янв 25, 2009 22:05
Сообщения: 1915
Откуда: Киров
Можно провести ручной анализ построения и оптимизации DB.
Например структура DB состоящая из переменных расположенных в порядке: DB1.DBX0.0; DB1.DBW2; DB1.DBX4.0 занимает 6 байт. Те же переменные расположенные в другом порядке DB1.DBX0.0; DB1.DBX0.1; DB1.DBW2 займут уже 4 байта. Кропотливая работа, но варинат решения проблемы...

Добавлю, что в продукте TIA такая оптимизация проводится автоматически (широко известная галочка в свойствах DB "optimized block acess").

ЗЫ: а кто-нибудь может пояснить каким образом проводится сжатие памяти при нажатии на кнопку "compress", которую указал в предидущем посте Petricheg?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Work Memory
СообщениеДобавлено: Вт дек 22, 2015 9:09 
Не в сети
Писатель со стажем

Зарегистрирован: Сб май 02, 2015 13:32
Сообщения: 941
Как именно это происходит на карточке "64 КБ" с реальным объёмом 16 МБ никто не знает
Изображение
но это работает :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Work Memory
СообщениеДобавлено: Вт дек 22, 2015 11:39 
Не в сети
Начинающий писатель

Зарегистрирован: Ср сен 02, 2015 22:43
Сообщения: 66
У нас просто подгорел транзистор на одном из выходов, то срабатывает, то нет.
Я хочу поменять в программе этот выход на другой. (свободный) Но память переполнена и не дает отправить изменённый блок в CPU.
Хочу понять будет ли безопасна следующая процедура (с точки зрения работоспособности всей программы):
1. Перевести контроллер в стоп.
2. Удалить только этот блок из CPU.
3. Записать туда измененный блок.
4. Перевести контроллер в RUN

Ничего не случится при выполнении пункта 2?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Work Memory
СообщениеДобавлено: Вт дек 22, 2015 11:52 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Сб авг 29, 2015 7:18
Сообщения: 1078
Откуда: райцентр Тольятти
Вчера подобная ситуация была.
Сделал так же по написанному, только грохнул всё (пользовательское) в онлайн и залил проект заново. Работает.
Компресс не помогал, хотя рабочая и загрузочная память были заняты наполовину, ретентивная почти под 100%.
После загрузки проекта примерно так и осталось.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Work Memory
СообщениеДобавлено: Вт дек 22, 2015 12:09 
Не в сети
Писатель со стажем

Зарегистрирован: Чт май 24, 2007 18:59
Сообщения: 617
Откуда: Екб
petricheg писал(а):
Можно попробовать упорядочить размещение данных в памяти - аналогично как делают дефрагментацию на жёстком диске

Данная функция актуальна только для S7-400 и S7-300 "старого" типоисполнения, в S7-300 "нового" типоисполнения данная функция выполняется автоматически ОС ЦПУ


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Work Memory
СообщениеДобавлено: Вт дек 22, 2015 12:40 
Не в сети
Известный Писатель

Зарегистрирован: Сб янв 02, 2010 12:47
Сообщения: 116
Aleks333777333 писал(а):
У нас просто подгорел транзистор на одном из выходов, то срабатывает, то нет.
Я хочу поменять в программе этот выход на другой. (свободный) Но память переполнена и не дает отправить изменённый блок в CPU.
Хочу понять будет ли безопасна следующая процедура (с точки зрения работоспособности всей программы):
1. Перевести контроллер в стоп.
2. Удалить только этот блок из CPU.
3. Записать туда измененный блок.
4. Перевести контроллер в RUN

Ничего не случится при выполнении пункта 2?

Ничего случиться не должно, но можно (даже нужно) перед этим сделать upload программы на случай, если рука "дрогнет" и удалит что-нибудь не то. Потом всегда можно будет накатить рабочую версию программы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Work Memory
СообщениеДобавлено: Вт дек 22, 2015 15:50 
Не в сети
Начинающий писатель

Зарегистрирован: Ср сен 02, 2015 22:43
Сообщения: 66
Большое спасибо всем - буду пробовать.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
 [ Сообщений: 12 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Yahoo [Bot], YandexBot и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group