| Предыдущая тема :: Следующая тема |
| Автор |
Сообщение |
SASNPZ Новичок


Зарегистрирован: Oct 07, 2015 Сообщения: 3 Рейтинг: +0/-0
|
Добавлено: Ср 07 Окт, 2015 11:31:22 Заголовок сообщения: |
|
|
Все, разобрался, 0.1 нельзя точно представить в двоичной системе, отсюда и косяк. В Delphi аналогично
var
a: integer;
b, c: double;
begin
b := 0.1;
c := 0.7;
a := trunc((b + c) * 10);
showmessage(IntToStr(a));
end;
дает результат 7 |
|
| Вернуться к началу |
|
 |
orshu Частый гость


Зарегистрирован: Sep 30, 2011 Сообщения: 41 Рейтинг: +0/-0 Откуда: Марий Эл
|
Добавлено: Пн 26 Окт, 2015 11:20:47 Заголовок сообщения: |
|
|
Всем здравствуйте.
Не так давно пересматривали ("перелопачивали") проект в ControlLogix 1756 (L55/A) избавляясь от инструкций СОР.
После изменений появилась такая особенность: опрос тегов происходит очень медленно.
Подскажите в какую сторону копать.
Ошибки RSLinx:
AB_ETH-1\0.(192.168.1.1).1.0.2.1.1.1 : -none- : 10/16/15 - 17:59:20 : 00h
Items: -none-
Type: READ
Mfg: Allen-Bradley
PlcType: Logix5000
Desc: ControlLogix connection 3 got disconnected.
Number of occurrences: 1
Last Error occurred: 10/16/15 - 17:59:20
AB_ETH-1\0.(192.168.1.1).1.0.2.1.1.1 : -none- : 10/16/15 - 17:59:40 : 00h
Items: -none-
Type: READ
Mfg: Allen-Bradley
PlcType: Logix5000
Desc: ControlLogix optimized packet response while in Initialized state: dba410
Number of occurrences: 1
Last Error occurred: 10/16/15 - 17:59:40
Пробовал использовать Task Monitor Tool:
[img] http://s019.radikal.ru/i620/1510/7b/9e136e59151a.jpg
[/img] http://s008.radikal.ru/i305/1510/f7/4b9bb4734ceb.jpg
[img] http://s004.radikal.ru/i206/1510/39/bc00f9f5a534.jpg
[/img] http://s020.radikal.ru/i710/1510/2a/6e0cb4f8dd19.jpg |
|
| Вернуться к началу |
|
 |
Ryzhij62 Эксперт


Зарегистрирован: Apr 06, 2011 Сообщения: 409 Рейтинг: +29/-2 Откуда: Россия Рязань
|
Добавлено: Пн 26 Окт, 2015 11:46:18 Заголовок сообщения: Кулибины- рационализаторы... |
|
|
| orshu писал(а): | Всем здравствуйте.
Не так давно пересматривали ("перелопачивали") проект в ControlLogix 1756 (L55/A) избавляясь от инструкций СОР.
После изменений появилась такая особенность: опрос тегов происходит очень медленно.
Подскажите в какую сторону копать.
| Вспомнилось...
Заходит машинист установки серной кислоты в операторную и говорит:
- Я там какую-то задвижку закрыл. Угадай какую?
Старший смены так и осел...
Да кто ж знает, что Вы там с проектом вытворяли?!
Может у Вас через COP модули конфигурировались, может ещё что... |
|
| Вернуться к началу |
|
 |
orshu Частый гость


Зарегистрирован: Sep 30, 2011 Сообщения: 41 Рейтинг: +0/-0 Откуда: Марий Эл
|
Добавлено: Пн 26 Окт, 2015 12:39:43 Заголовок сообщения: |
|
|
| Вам смешно, проект изменяло несколько человек, а мне теперь разбираться с этим. |
|
| Вернуться к началу |
|
 |
Ryzhij62 Эксперт


Зарегистрирован: Apr 06, 2011 Сообщения: 409 Рейтинг: +29/-2 Откуда: Россия Рязань
|
Добавлено: Пн 26 Окт, 2015 12:59:21 Заголовок сообщения: |
|
|
Исходный, до изменений, проект есть?
Есть утилита RSLogix5000_Compare_Tool, воспользуйтесь ею и разбирайтесь с внесёнными изменениями.
Последний раз редактировалось: Ryzhij62 (Пн 26 Окт, 2015 19:18:45), всего редактировалось 1 раз |
|
| Вернуться к началу |
|
 |
oldDad Site Admin


Зарегистрирован: May 05, 2005 Сообщения: 2773 Рейтинг: +89/-5
|
Добавлено: Пн 26 Окт, 2015 15:01:35 Заголовок сообщения: |
|
|
| orshu писал(а): | | Вам смешно, проект изменяло несколько человек, а мне теперь разбираться с этим. |
Вы не обижайтесь, но помочь Вам - это как лечить по фотографии.
Ну откуда же нам знать, что там в проекте было и что вы там наперелопачивали? Мы же не ясонвидящие здесь. _________________ Обращайтесь к профессионалам. |
|
| Вернуться к началу |
|
 |
orshu Частый гость


Зарегистрирован: Sep 30, 2011 Сообщения: 41 Рейтинг: +0/-0 Откуда: Марий Эл
|
Добавлено: Ср 28 Окт, 2015 8:34:53 Заголовок сообщения: Re: Кулибины- рационализаторы... |
|
|
| Ryzhij62 писал(а): |
...
Может у Вас через COP модули конфигурировались, может ещё что... |
В смысле?
Поясните, зачем постоянно конфигурировать модули во время работы? |
|
| Вернуться к началу |
|
 |
Ryzhij62 Эксперт


Зарегистрирован: Apr 06, 2011 Сообщения: 409 Рейтинг: +29/-2 Откуда: Россия Рязань
|
Добавлено: Ср 28 Окт, 2015 9:36:59 Заголовок сообщения: Re: Кулибины- рационализаторы... |
|
|
| orshu писал(а): | В смысле?
Поясните, зачем постоянно конфигурировать модули во время работы? | А кто говорит про "постоянно"?
Такие вещи делают по мере необходимости. Например, после потери и восстановления питания на RIO.
Но и "избавиться от COP" можно по-разному
И забирать информацию из периферии по COP тоже можно. Вт.ч. и постоянно.
Короче, Вам уже сказали: " - По фотографии не лечим!"
Есть конкретный вопрос - обсудим, а разводить гипотетический трёп лично у меня настроения нет. |
|
| Вернуться к началу |
|
 |
mp3corp Эксперт


Зарегистрирован: Dec 12, 2012 Сообщения: 164 Рейтинг: +2/-0
|
Добавлено: Ср 28 Окт, 2015 11:57:50 Заголовок сообщения: |
|
|
| Похоже я один из тех кто "собирает данные по MODBUS" и "ложит " их в переменные с помощью инструкции COP) |
|
| Вернуться к началу |
|
 |
dv_ Эксперт


Зарегистрирован: Sep 14, 2006 Сообщения: 776 Рейтинг: +41/-1 Откуда: Донецк
|
Добавлено: Ср 28 Окт, 2015 21:14:49 Заголовок сообщения: |
|
|
| mp3corp писал(а): | | Похоже я один из тех кто "собирает данные по MODBUS" и "ложит " их в переменные с помощью инструкции COP) | Не Modbus, а используется:

В Logix стоит использовать CPS, если DEST может читаться другими.
Какая необходимость была избавляться от COP? Сколько раз звучало: "Работает - не трогай".
У нее есть возможности недоступные другими средствами.
"Создаем себе трудности, для того, чтобы их потом героически преодолевать". |
|
| Вернуться к началу |
|
 |
mp3corp Эксперт


Зарегистрирован: Dec 12, 2012 Сообщения: 164 Рейтинг: +2/-0
|
Добавлено: Чт 29 Окт, 2015 6:42:45 Заголовок сообщения: |
|
|
| dv_ писал(а): | | mp3corp писал(а): | | Похоже я один из тех кто "собирает данные по MODBUS" и "ложит " их в переменные с помощью инструкции COP) | Не Modbus, а используется:
|
Я таким образом использую:
| Код: | | COP(MCMR_4.DATA.ReadData[60],ХХХХХХ[11].Gn1,8); |
|
|
| Вернуться к началу |
|
 |
oldDad Site Admin


Зарегистрирован: May 05, 2005 Сообщения: 2773 Рейтинг: +89/-5
|
Добавлено: Чт 29 Окт, 2015 7:48:52 Заголовок сообщения: |
|
|
В отличие от CPS, команда COP не обеспечивает целостности массива данных в такой мультизадачной системе, как платформа Logix, т.к. за время копирования массива данных часть данных может измениться.
Поэтому нет никакого смысла полльзоваться COP. Если Вам нужно копировать данные из одного места в другое, пользуйтесь синхронным копированием CPS. _________________ Обращайтесь к профессионалам. |
|
| Вернуться к началу |
|
 |
Ryzhij62 Эксперт


Зарегистрирован: Apr 06, 2011 Сообщения: 409 Рейтинг: +29/-2 Откуда: Россия Рязань
|
Добавлено: Чт 29 Окт, 2015 8:07:44 Заголовок сообщения: |
|
|
| oldDad писал(а): | | В отличие от CPS, команда COP не обеспечивает целостности массива данных в такой мультизадачной системе, как платформа Logix, т.к. за время копирования массива данных часть данных может измениться. | При использовании COP синхронность данных в масиве должна и может быть обеспечена дополнительными пограммными средствами.
В то время как CPS с большим массивом откровенно тормозит программу на время своего исполнения, разрушая многозадачность.
Гармония, возможно, где-то посредине
Иногда удаётся спланировать структуру большого массива так, чтобы можно было пропускать его через CPS частями, добиваясь синхронности лишь в критических структурах данных. |
|
| Вернуться к началу |
|
 |
oldDad Site Admin


Зарегистрирован: May 05, 2005 Сообщения: 2773 Рейтинг: +89/-5
|
Добавлено: Чт 29 Окт, 2015 8:51:11 Заголовок сообщения: |
|
|
Согласен.
В любом случае, после первоначального проектирования программнного кода, он подлежит доработке напильником (зачеркнуто ) оптимизации под конкретное применение. Например, если окажется, что CPS непомерно грузит CPU, то этой задаче нужно понизить приоритет и/или копировать данные небольшими порциями, и.т.д.
Однако, учитывая то, что многие юзеры имеют небольшое понятие о планировании вычислительных процессов в мультизадачных системах реального времени, каковой является платформа Logix, они программируют всё в одной плоскости, в основном, в одной задаче. Посему игры с приоритетами под названием "don't fog the CPU" остаются в значительной степени схоластикой.... _________________ Обращайтесь к профессионалам. |
|
| Вернуться к началу |
|
 |
orshu Частый гость


Зарегистрирован: Sep 30, 2011 Сообщения: 41 Рейтинг: +0/-0 Откуда: Марий Эл
|
Добавлено: Чт 05 Ноя, 2015 7:34:10 Заголовок сообщения: ControlNet |
|
|
Всем добрый день.
Знатоки, подскажите оптимальные значения NUT, RPI, RTS
В настоящее время у нас: NUT - 25 ms, значения RPI и RTS (к примеру в одной корзине): у модуля CNET RPI 50 ms, у аналоговых входных - RPI 200 ms, RTS - 100 ms, у аналоговых выходных RPI - 100 ms
Заранее спасибо. |
|
| Вернуться к началу |
|
 |
|