IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Инструкция ADD в цикле, Как правильно сложить значенния в массиве
yesgo
сообщение 27.02.2014 - 12:26
Сообщение #1


Читатель
*

Группа: Пользователи
Сообщений: 32
Регистрация: 9.06.2008
Пользователь №: 8371



Добрый день!
Не могу понять как в GX IEC DEVELOPER сложить значения в массиве наименее затратным способом.
Пытаюсь сделать так:
Прикрепленный файл  add.png ( 15.51 килобайт ) Кол-во скачиваний: 31
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
inntele
сообщение 27.02.2014 - 12:50
Сообщение #2


Гуру
******

Группа: Пользователи
Сообщений: 1000
Регистрация: 19.08.2009
Пользователь №: 9149



Цитата(yesgo @ 27.02.2014 - 14:26) *
Добрый день!
Не могу понять как в GX IEC DEVELOPER сложить значения в массиве наименее затратным способом.
Пытаюсь сделать так:
Прикрепленный файл  add.png ( 15.51 килобайт ) Кол-во скачиваний: 31


ПЛК какой серии?


--------------------
Мозг любого человека работает круглосуточно. Но мозг инженера отличается тем, что способен при этом проанализировать задачу, синтезировать несколько техничных ее решений, а затем выбрать из этих решений наилучшее.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ivgtrk
сообщение 27.02.2014 - 12:59
Сообщение #3


Гигант мысли
****

Группа: Пользователи
Сообщений: 459
Регистрация: 5.02.2014
Пользователь №: 10203



Цитата(yesgo @ 27.02.2014 - 16:26) *
Добрый день!
Не могу понять как в GX IEC DEVELOPER сложить значения в массиве наименее затратным способом.
Пытаюсь сделать так:
Прикрепленный файл  add.png ( 15.51 килобайт ) Кол-во скачиваний: 31

Приведите PrintOut программы; на данном рисунке не совсем понятна общая логика того, что Вы хотите сделать.

Сообщение отредактировал ivgtrk - 27.02.2014 - 13:05


--------------------
Никому никогда ничего не объясняйте — каждый всё равно поймёт так, как ему выгодно.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
yesgo
сообщение 27.02.2014 - 13:22
Сообщение #4


Читатель
*

Группа: Пользователи
Сообщений: 32
Регистрация: 9.06.2008
Пользователь №: 8371



Плк FX3G, в данном месте программы пытаюсь сложить значения в массиве состоящем из 72 элементов. Почему возник вопрос - значений в массиве может быть от 16 до 600+ (разные программы), надоело складывать их штатой функцией add, хочется упростить себе жизнь. Прикладываю скриншот штатной работающей функции - очень муторно, так делать хоть и работает.
Прикрепленный файл  add_old.png ( 51.56 килобайт ) Кол-во скачиваний: 16

PrintOut как сделать?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ivgtrk
сообщение 27.02.2014 - 13:23
Сообщение #5


Гигант мысли
****

Группа: Пользователи
Сообщений: 459
Регистрация: 5.02.2014
Пользователь №: 10203



Цитата(yesgo @ 27.02.2014 - 16:26) *
Добрый день!
Не могу понять как в GX IEC DEVELOPER сложить значения в массиве наименее затратным способом.
Пытаюсь сделать так:
Прикрепленный файл  add.png ( 15.51 килобайт ) Кол-во скачиваний: 31



--------------------
Никому никогда ничего не объясняйте — каждый всё равно поймёт так, как ему выгодно.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ivgtrk
сообщение 27.02.2014 - 13:39
Сообщение #6


Гигант мысли
****

Группа: Пользователи
Сообщений: 459
Регистрация: 5.02.2014
Пользователь №: 10203



Цитата(yesgo @ 27.02.2014 - 17:22) *
Плк FX3G, в данном месте программы пытаюсь сложить значения в массиве состоящем из 72 элементов. Почему возник вопрос - значений в массиве может быть от 16 до 600+ (разные программы) ...

1. Массив динамический? Т.е. размерность его заранее не известна?
2. Я так понял, Вы хотите сложить данные в массиве друг с другом?

Цитата(yesgo @ 27.02.2014 - 17:22) *
PrintOut как сделать?

Project > Printer Setup > принтер Adobe PDF > OK
Поставьте выделение на "Проект" > Печать.

Сообщение отредактировал ivgtrk - 27.02.2014 - 13:40


--------------------
Никому никогда ничего не объясняйте — каждый всё равно поймёт так, как ему выгодно.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
yesgo
сообщение 27.02.2014 - 13:50
Сообщение #7


Читатель
*

Группа: Пользователи
Сообщений: 32
Регистрация: 9.06.2008
Пользователь №: 8371



QUOTE(ivgtrk @ 27.02.2014 - 13:39) *
1. Массив динамический? Т.е. размерность его заранее не известна?

Нет, массив не динамический, просто от проекта к проекут кол-во меняется.
QUOTE(ivgtrk @ 27.02.2014 - 13:39) *
2. Я так понял, Вы хотите сложить данные в массиве друг с другом?

Да.


Пока не получается.
Прикрепленный файл  add_new.png ( 38.92 килобайт ) Кол-во скачиваний: 17

Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ivgtrk
сообщение 27.02.2014 - 14:02
Сообщение #8


Гигант мысли
****

Группа: Пользователи
Сообщений: 459
Регистрация: 5.02.2014
Пользователь №: 10203



Цитата(yesgo @ 27.02.2014 - 17:50) *
Цитата(ivgtrk @ 27.02.2014 - 13:39) *
1. Массив динамический? Т.е. размерность его заранее не известна?

Нет, массив не динамический, просто от проекта к проекут кол-во меняется.
Цитата(ivgtrk @ 27.02.2014 - 13:39) *
2. Я так понял, Вы хотите сложить данные в массиве друг с другом?

Да.


Пока не получается.
Прикрепленный файл  add_new.png ( 38.92 килобайт ) Кол-во скачиваний: 17


Ну я вам привел общий принцип, основанный на вашем же прикреплении, т.к. мне не ясно назначение переменной sumV, и как дальше используется sumV1.
А сложить все значения в массиве наиболее просто как раз в цикле с помощью ADD, перебором, как в данном случае с использованием инд. рег. Z. И даже далеко не всегда можно прибегать к применению цикла, или, как в вашем случае переходам (CJ).
Да, и массив начинается с 0-го адреса, а не с 1.

Сообщение отредактировал ivgtrk - 27.02.2014 - 14:06


--------------------
Никому никогда ничего не объясняйте — каждый всё равно поймёт так, как ему выгодно.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
inntele
сообщение 27.02.2014 - 14:03
Сообщение #9


Гуру
******

Группа: Пользователи
Сообщений: 1000
Регистрация: 19.08.2009
Пользователь №: 9149



Цитата(yesgo @ 27.02.2014 - 15:50) *
Пока не получается.
Прикрепленный файл  add_new.png ( 38.92 килобайт ) Кол-во скачиваний: 17


Объясните на словах, что Вы собирались продемонстрировать приложенным скриншотом?


--------------------
Мозг любого человека работает круглосуточно. Но мозг инженера отличается тем, что способен при этом проанализировать задачу, синтезировать несколько техничных ее решений, а затем выбрать из этих решений наилучшее.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ivgtrk
сообщение 27.02.2014 - 14:41
Сообщение #10


Гигант мысли
****

Группа: Пользователи
Сообщений: 459
Регистрация: 5.02.2014
Пользователь №: 10203



Цитата(yesgo @ 27.02.2014 - 17:22) *
Прикрепленный файл  add_old.png ( 51.56 килобайт ) Кол-во скачиваний: 16

Вот красота! laugh.gif
А если бы элементов было тысяч так пять? smile.gif

Сообщение отредактировал ivgtrk - 27.02.2014 - 14:42


--------------------
Никому никогда ничего не объясняйте — каждый всё равно поймёт так, как ему выгодно.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
yesgo
сообщение 27.02.2014 - 14:44
Сообщение #11


Читатель
*

Группа: Пользователи
Сообщений: 32
Регистрация: 9.06.2008
Пользователь №: 8371



QUOTE(ivgtrk @ 27.02.2014 - 14:30) *
Если я правильно понял то, что вы хотите сделать (просуммировать массив), то придерживайтесь примерно такого принципа:
(если массив имеет 73 элемента)
А переменная sumV1 не нужна вовсе.

Да все получилось, здорово облегчили жизнь. Спасибо!

А по нумерации массива, такую индексацию сделал специально, для упрощения некоторых расчетов.
Прикрепленный файл  var.png ( 44.99 килобайт ) Кол-во скачиваний: 33
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ivgtrk
сообщение 27.02.2014 - 14:54
Сообщение #12


Гигант мысли
****

Группа: Пользователи
Сообщений: 459
Регистрация: 5.02.2014
Пользователь №: 10203



Цитата(yesgo @ 27.02.2014 - 18:44) *
А по нумерации массива, такую индексацию сделал специально, для упрощения некоторых расчетов.
Прикрепленный файл  var.png ( 44.99 килобайт ) Кол-во скачиваний: 33

Впечатляет rolleyes.gif


--------------------
Никому никогда ничего не объясняйте — каждый всё равно поймёт так, как ему выгодно.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 20.04.2024 - 08:05