Здравствуйте! история такая,Есть программа для ПЛК 110-60 [м02] к ней раньше привязывались весовые терминалы типа токвес WLM100. Сейчас заказали новые токвесы WK-100 у них уже полноценный MODBUS 485. Управление переделать удалось. Но вот одна проблемма. В Скаде есть вкладка рецептов в которой оператор записыывает переменные. И есть две кнопки переключения по рецептам. Проблемма такая что нельзя сохранить разные рецепты на всех вкладках сохраняеться только 1 рецепт один и тот же.
вот пример программы управления

(* Копирование текущего рецепта из скады в ПЛК *)
copy_P_Recipe_To_curRecipeScada();

(* Если оператор уходит с экрана рецептов *)
IF closeRecipeScreen AND NOT nowWriteToWLM THEN (* AND NOT nowWriteToWLM оставить??? *)
copy_tempRecipeScada_To_curRecipeScada();
numCurRecipeInScada:=numCurRecipeInWLM;
copy_allRecipes_To_curRecipeScada();
copy_curRecipeScada_To_tempRecipeScada();
closeRecipeScreen:=FALSE;
END_IF;

(* Переход к просмотру следующего рецепта по требованию, если можно *)
IF needViewNextRecipe AND NOT nowWriteToWLM THEN
IF numCurRecipeInScada<NUM_OF_RECIPIES THEN
copy_tempRecipeScada_To_curRecipeScada();
numCurRecipeInScada:=numCurRecipeInScada+1;
copy_allRecipes_To_curRecipeScada();
copy_curRecipeScada_To_tempRecipeScada();
END_IF
needViewNextRecipe:=FALSE;
END_IF;

(* (* Переход к просмотру следующего рецепта (+10) по требованию, если можно *)
IF needViewNextRecipe10 AND NOT nowWriteToWLM THEN
IF numCurRecipeInScada+10<=NUM_OF_RECIPIES THEN
copy_tempRecipeScada_To_curRecipeScada();
numCurRecipeInScada:=numCurRecipeInScada+10;
copy_allRecipes_To_curRecipeScada();
copy_curRecipeScada_To_tempRecipeScada();
END_IF
needViewNextRecipe10:=FALSE;
END_IF;*)

(* Переход к просмотру предыдущего рецепта по требованию, если можно *)
IF needViewPrevRecipe AND NOT nowWriteToWLM THEN
IF numCurRecipeInScada>1 THEN
copy_tempRecipeScada_To_curRecipeScada();
numCurRecipeInScada:=numCurRecipeInScada-1;
copy_allRecipes_To_curRecipeScada();
copy_curRecipeScada_To_tempRecipeScada();
END_IF
needViewPrevRecipe:=FALSE;
END_IF;

(* (* Переход к просмотру предыдущего рецепта (-10) по требованию, если можно *)
IF needViewPrevRecipe10 AND NOT nowWriteToWLM THEN
IF numCurRecipeInScada>10 THEN
copy_tempRecipeScada_To_curRecipeScada();
numCurRecipeInScada:=numCurRecipeInScada-10;
copy_allRecipes_To_curRecipeScada();
copy_curRecipeScada_To_tempRecipeScada();
END_IF
needViewPrevRecipe10:=FALSE;
END_IF;*)

(* Переход к записи рецепта терминала 0 по требованию *)
IF needWriteRecipe THEN
(* Проверяем новый рецепт на правильность *)
wrongRecipe:=checkCurRecipeScada();
(* Если рецепт неправильный - записывать не будем. Возвращаем все на место. Сообщаем на экран. *)
IF wrongRecipe THEN
copy_tempRecipeScada_To_curRecipeScada();
copy_curRecipeScada_To_allRecipes();
needWriteRecipe:=FALSE;
(* Иначе, если рецепт правильный - готовимся к записи. *)
ELSE
(* Готовимся к записи *)
copy_curRecipeScada_To_allRecipes();
nowWriteToWLM:=TRUE;
needWriteRecipe:=FALSE; (* обнуляем в _toMODBUS *)
END_IF
END_IF

подскажите как написать код, чтобы я мог хранить 10 рецептов в памяти ПЛК, чтобы при загрузке они загружались в скаду и менять их по нажаттию кнопок. Переменная номера рецепта numCurRecipeInScada , переменные кнопок ТeedViewPrevRecipe и needViewNextRecipe
mbwk1_recipe11_write := Recipe1_1;
mbwk1_recipe11_write := Recipe1_1;
mbwk1_recipe12_write := Recipe1_2;
mbwk1_recipe13_write:= Recipe1_3;
mbwk1_recipe21_write := Recipe2_1;
mbwk1_recipe22_write := Recipe2_2;
mbwk1_recipe23_write:= Recipe2_3;
mbwk1_recipe31_write :=Recipe3_1;
mbwk1_recipe32_write := Recipe3_2;
mbwk1_recipe33_write := Recipe3_3;
mbwk2_recipe11_write := Recipe4_1;
mbwk2_recipe12_write := Recipe4_2;
mbwk2_recipe13_write := Recipe4_3;
mbwk3_recipe11_write := Recipe5_1;
mbwk3_recipe12_write := Recipe5_2;
mbwk3_recipe13_write := Recipe5_3;
mbwk3_recipe21_write:= Recipe6_1;
mbwk3_recipe22_write := Recipe6_2;
mbwk3_recipe23_write := Recipe6_3; перед знаком рано слева переменная MODBUS после равно переменная SCADA. Помогите пожалуйста. Неделю уже мучаюсь ничего сделать не могу.