Segnetics

Вернуться   Segnetics > Форум Segnetics > Вопросы о программировании

Вопросы о программировании Вопросы, касающиеся программирования на FBD

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 16.01.2014, 14:20   #1
Alexsis
Senior Member
 
Регистрация: Dec 2013
Адрес: Краснодар
Сообщения: 177
Благодарил(а): 6 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Не понимаю, как работает схема

При включении питания на первом ^D-триггере появляется логическая единица почему ???
Вложения
Тип файла: msl контроль нагрева.msl (14.6 Кбайт, 111 просмотров)
Alexsis вне форума   Ответить с цитированием
Старый 16.01.2014, 14:55   #2
InHELL
Новичок
 
Регистрация: Oct 2013
Сообщения: 14
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Ошибка ^D-триггера

Цитата
Сообщение от Alexsis Посмотреть сообщение
При включении питания на первом ^D-триггере появляется логическая единица почему ???
Осмелюсь предположить, что у вас проскакивает сигнал на вход ^. Значение температуры (наверняка проходит через ПИД-регулятор), дергается резко вверх, в связи с чем запоминается триггером, а потом выравнивается. Не судите строго, я новенький, могу глупость сказать.
InHELL вне форума   Ответить с цитированием
Старый 16.01.2014, 15:45   #3
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 16 043
Благодарил(а): 9 раз(а)
Поблагодарили: 481 раз(а) в 439 сообщениях
По умолчанию Ответ: Ошибка ^D-триггера

Триггрер защёлкивается по событию Уставка больше или равна Температуре.

В представленной вами схеме на обоих входах нули. Ноль равен нулю, триггер защёлкивается.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 16.01.2014, 21:25   #4
Alexsis
Senior Member
 
Регистрация: Dec 2013
Адрес: Краснодар
Сообщения: 177
Благодарил(а): 6 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Ошибка ^D-триггера

Цитата:
Сообщение от Arsie Посмотреть сообщение
Триггрер защёлкивается по событию Уставка больше или равна Температуре.

В представленной вами схеме на обоих входах нули. Ноль равен нулю, триггер защёлкивается.
Ну я конечно не ас но такие мелочи понимаю...
Выкладываю полную схему... правда не оптимизированную... Уже есть планы, но нет времени. Ну не в этом суть, главное работает, но есть эта проблемка. Этот проблемный макрос находится в макросе "пастеризация"=>"контроль нагрева" Температура пастеризации 64 градуса, на момент включения темп 30-35 гр резких скачков нет... Может только с внутреннего источника контролера
Вложения
Тип файла: psl Пастеризатор V 1.1,1.psl (491.0 Кбайт, 83 просмотров)
Alexsis вне форума   Ответить с цитированием
Старый 17.01.2014, 10:41   #5
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 16 043
Благодарил(а): 9 раз(а)
Поблагодарили: 481 раз(а) в 439 сообщениях
По умолчанию Ответ: Ошибка ^D-триггера

Цитата
Сообщение от Alexsis Посмотреть сообщение
Ну я конечно не ас но такие мелочи понимаю...
Я лишь повторю то, что написал: в момент включения контроллера выполняется уравнение "Температура">="Уставка".

В вашем случае всё банально. Вы не ждёте готовности памяти выдать уставку. Поэтому сразу после включения контроллера уставка равна нулю.

35 >= 0, всё работает правильно.


Это описано в справке:


Цитата Инициализация

При старте программы после включения питания или окончания загрузки все блоки сохранения проходят инициализацию:

· Блок EEPROM() читает последнее записанное значение

· Блок ARRAY() с единичной длиной также читает последнее записанное значение

· Блок ARRAYII() читает все значения и выдает их на соответствующие выходы

После успешной инициализации блоки памяти сигнализируют об этом, устанавливая 1 на выходе syn.

Инициализация не произойдёт, если блок распределен во внешнюю память, а модуль памяти не подключен.

Одновременно все блоки читать память не могут. Поэтому блоки инициализируются по очереди.

Эта операция может занимать несколько циклов программы.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 17.01.2014, 11:18   #6
Alexsis
Senior Member
 
Регистрация: Dec 2013
Адрес: Краснодар
Сообщения: 177
Благодарил(а): 6 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Не понимаю, как работает схема

Семен-Семеныч!!!!!
Необходимо банально подождать какоето время и усё?!?!
Или зашить макрос готовности

Alexsis вне форума   Ответить с цитированием
Старый 17.01.2014, 12:14   #7
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 16 043
Благодарил(а): 9 раз(а)
Поблагодарили: 481 раз(а) в 439 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата
Сообщение от Alexsis Посмотреть сообщение
Семен-Семеныч!!!!!
Необходимо банально подождать какоето время и усё?!?!
Или зашить макрос готовности

Угумс.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 21.03.2014, 19:02   #8
СВМ
Senior Member
 
Регистрация: Jan 2012
Адрес: Саратов
Сообщения: 179
Благодарил(а): 1 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата:
Сообщение от Arsie Посмотреть сообщение
Угумс.
Не получается
Миниатюры
Нажмите на картинку для увеличения

Название:  Ловушка_нуля.jpg
Просмотров: 184
Размер:  101.1 Кбайт  
СВМ вне форума   Ответить с цитированием
Старый 21.03.2014, 19:40   #9
Max2114
Senior Member
 
Регистрация: Jun 2007
Сообщения: 1 759
Благодарил(а): 8 раз(а)
Поблагодарили: 12 раз(а) в 12 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата
Сообщение от СВМ Посмотреть сообщение
Не получается
Там в начале работы программы и висит 0. Надо синхронизировать работу программы. Как один из вариантов - взять сигнал "память готова". Правда он обунляется когда происходит изменение уставки...
Max2114 вне форума   Ответить с цитированием
Старый 22.03.2014, 15:24   #10
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 16 043
Благодарил(а): 9 раз(а)
Поблагодарили: 481 раз(а) в 439 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата
Сообщение от СВМ Посмотреть сообщение
Не получается
Убрать NOT и триггер покажет факт окончания инициализации именно этой ячейки.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 22.03.2014, 17:59   #11
СВМ
Senior Member
 
Регистрация: Jan 2012
Адрес: Саратов
Сообщения: 179
Благодарил(а): 1 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата
Сообщение от Max2114 Посмотреть сообщение
Там в начале работы программы и висит 0. Надо синхронизировать работу программы. Как один из вариантов - взять сигнал "память готова". Правда он обунляется когда происходит изменение уставки...
Я так и делаю. Ставлю мультиплексор с управлением по сигналу "память готова"
СВМ вне форума   Ответить с цитированием
Старый 22.03.2014, 18:00   #12
СВМ
Senior Member
 
Регистрация: Jan 2012
Адрес: Саратов
Сообщения: 179
Благодарил(а): 1 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата:
Сообщение от Arsie Посмотреть сообщение
Убрать NOT и триггер покажет факт окончания инициализации именно этой ячейки.
Вопрос был о другом: Задержка помогает или только мне нет?
СВМ вне форума   Ответить с цитированием
Старый 23.03.2014, 14:05   #13
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 16 043
Благодарил(а): 9 раз(а)
Поблагодарили: 481 раз(а) в 439 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата
Сообщение от СВМ Посмотреть сообщение
Вопрос был о другом: Задержка помогает или только мне нет?
Конструкторские программы ведь как-то работают. А там именно задержка от объёма используемой памяти.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 24.03.2014, 19:07   #14
Max2114
Senior Member
 
Регистрация: Jun 2007
Сообщения: 1 759
Благодарил(а): 8 раз(а)
Поблагодарили: 12 раз(а) в 12 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата
Сообщение от СВМ Посмотреть сообщение
Вопрос был о другом: Задержка помогает или только мне нет?
Чем больше памяти тем больше должна быть задержка.
Max2114 вне форума   Ответить с цитированием
Старый 14.10.2014, 19:57   #15
СВМ
Senior Member
 
Регистрация: Jan 2012
Адрес: Саратов
Сообщения: 179
Благодарил(а): 1 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата:
Сообщение от Arsie Посмотреть сообщение
Конструкторские программы ведь как-то работают.
Возможно ли проводить инициализацию EEPROM до запуска основной программы? Сначала присвоить переменным значения из памяти, а лишь потом использовать их в программе?
СВМ вне форума   Ответить с цитированием
Старый 15.10.2014, 10:02   #16
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 16 043
Благодарил(а): 9 раз(а)
Поблагодарили: 481 раз(а) в 439 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Первая фраза вашего сообщения немного противоречит второй, а вторая, если понять её буквально, вообще не касается блоков памяти. Поэтому отвечу раздельно на первую и на вторую в двух частях. Всего три ответа.

Цитата
Сообщение от СВМ Посмотреть сообщение
Возможно ли проводить инициализацию EEPROM до запуска основной программы?
Нет.

Если вы таким прозрачным образом намекаете, что ваш алгоритм не успевает дождаться инициализации, то введите в программу сигнал готовности по примеру программ Конструктора. Можно даже банально отсчитать нужное время счётчиком CTU(16) и снять с него сигнал разрешения работы алгоритма.



Цитата
Сообщение от СВМ Посмотреть сообщение
Сначала присвоить переменным значения из памяти
Переменным никогда ничего самостоятельно не присваивается, это может сделать только Modbus-мастер



Цитата
Сообщение от СВМ Посмотреть сообщение
лишь потом использовать их в программе?
У блоков памяти есть выход готовности значения. Когда этот выход становится равен единице, вы можете использовать это значение в программе. Для простоты можете проверять этот флаг у самого последнего блока памяти, он все равно инициализируется в самом конце.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 15.10.2014, 19:15   #17
СВМ
Senior Member
 
Регистрация: Jan 2012
Адрес: Саратов
Сообщения: 179
Благодарил(а): 1 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата:
Сообщение от Arsie Посмотреть сообщение
Для простоты можете проверять этот флаг у самого последнего блока памяти, он все равно инициализируется в самом конце.
Спасибо за подсказку, обяэательно воспользуюсь.
СВМ вне форума   Ответить с цитированием
Старый 17.11.2014, 19:11   #18
СВМ
Senior Member
 
Регистрация: Jan 2012
Адрес: Саратов
Сообщения: 179
Благодарил(а): 1 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата:
Сообщение от Arsie Посмотреть сообщение
Если вы таким прозрачным образом намекаете, что ваш алгоритм не успевает дождаться инициализации, то введите в программу сигнал готовности по примеру программ Конструктора. Можно даже банально отсчитать нужное время счётчиком CTU(16) и снять с него сигнал разрешения работы алгоритма.
У блоков памяти есть выход готовности значения. Когда этот выход становится равен единице, вы можете использовать это значение в программе. Для простоты можете проверять этот флаг у самого последнего блока памяти, он все равно инициализируется в самом конце.
Вот простой пример, см. картинку 1. Куда и какую задержку поставить? Ставить по два блока на каждую ячейку памяти мне не нравится.
Ещё вопрос, см. картинку 2, как поймать 1.#QNAN?
Миниатюры
Нажмите на картинку для увеличения

Название:  Картинка 1.jpg
Просмотров: 84
Размер:  86.0 Кбайт   Нажмите на картинку для увеличения

Название:  Картинка 2.jpg
Просмотров: 79
Размер:  69.1 Кбайт  
СВМ вне форума   Ответить с цитированием
Старый 18.11.2014, 10:38   #19
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 16 043
Благодарил(а): 9 раз(а)
Поблагодарили: 481 раз(а) в 439 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата
Сообщение от СВМ Посмотреть сообщение
Вот простой пример, см. картинку 1. Куда и какую задержку поставить? Ставить по два блока на каждую ячейку памяти мне не нравится.
Ещё вопрос, см. картинку 2, как поймать 1.#QNAN?
1) Смотреть самый последний блок в программе. Либо счётчиком подобранную методом научного тыка задержку

2) Ловить нужно ноль в делителе, а не qnan

Ну и последнее - обе картинки, извините, пример неграмотного подхода. Сигнал готовности должен влиять на определяющий алгоритм, на его выходные данные.

Например, в макросе расписания всё построено так, что нули на выходах ни к чему не приведут.

В проекте Конструктора всё построено так, что аварии не фиксируются, а сами макросы вполне себе пробегают в первые пару секунд все 8 кругов ада. Ну и пусть пробегают.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 18.11.2014, 20:23   #20
СВМ
Senior Member
 
Регистрация: Jan 2012
Адрес: Саратов
Сообщения: 179
Благодарил(а): 1 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата:
Сообщение от Arsie Посмотреть сообщение
1) Смотреть самый последний блок в программе. Либо счётчиком подобранную методом научного тыка задержку

2) Ловить нужно ноль в делителе, а не qnan

Ну и последнее - обе картинки, извините, пример неграмотного подхода. Сигнал готовности должен влиять на определяющий алгоритм, на его выходные данные.

Например, в макросе расписания всё построено так, что нули на выходах ни к чему не приведут.

В проекте Конструктора всё построено так, что аварии не фиксируются, а сами макросы вполне себе пробегают в первые пару секунд все 8 кругов ада. Ну и пусть пробегают.
1)Вопрос именно в задержке. Так куда её ставить на картинке 1 в предыдущем сообщении?
2)А кто написал вот это (см. картинку Деление)? Здесь инструкция по поиску qnan. Или уже исправили? Тогда откуда скачать обновлённую справку?
3)Приведите, пожалуйста, пример грамотного проекта, состоящего из одной ячейки памяти и задержки. Критерий грамотности - первое же (а равно и последующее) чтение из ячейки памяти должно возвращать не нуль, а то, что в ячейке этой записано.

Почему я вцепился в задержку? Потому, что сейчас я вынужден каждую ячейку памяти обвязывать дополнительными блоками для предотвращения деления на нуль. Надеюсь обойтись одной задержкой на всю используемую память, но не представляю, куда засунуть эту задержку.
Миниатюры
Нажмите на картинку для увеличения

Название:  Деление.jpg
Просмотров: 52
Размер:  126.7 Кбайт  
СВМ вне форума   Ответить с цитированием
Старый 19.11.2014, 11:21   #21
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 16 043
Благодарил(а): 9 раз(а)
Поблагодарили: 481 раз(а) в 439 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата
Сообщение от СВМ Посмотреть сообщение
1)Вопрос именно в задержке. Так куда её ставить на картинке 1 в предыдущем сообщении?
Картинка 1 не содержит осмысленного алгоритма, туда некуда и нечего вставлять.



Цитата
Сообщение от СВМ Посмотреть сообщение
2)А кто написал вот это (см. картинку Деление)? Здесь инструкция по поиску qnan. Или уже исправили? Тогда откуда скачать обновлённую справку?
Ну вы разве не видите, что там числа одновременно больше друг друга и меньше друг друга? Ставите AND и получаете флаг "здесь что-то не так".



Цитата
Сообщение от СВМ Посмотреть сообщение
3)Приведите, пожалуйста, пример грамотного проекта, состоящего из одной ячейки памяти и задержки. Критерий грамотности - первое же (а равно и последующее) чтение из ячейки памяти должно возвращать не нуль, а то, что в ячейке этой записано.
Это просто блок памяти единичной длины. Если же нужно именно чтение, то см. картинку.

На этот раз был некорректен сам вопрос. Мои ответы отвечают на ваши слова, но не на то, что вы на самом деле хотите спросить. Спросите нормально, чтобы я не гадал, что же именно вам нужно и я вам обязательно помогу.



Цитата
Сообщение от СВМ Посмотреть сообщение
Почему я вцепился в задержку? Потому, что сейчас я вынужден каждую ячейку памяти обвязывать дополнительными блоками для предотвращения деления на нуль. Надеюсь обойтись одной задержкой на всю используемую память, но не представляю, куда засунуть эту задержку.
Засовывать её нужно в алгоритм. Алгоритм вы не показываете. Но спрашиваете, что там дорабатывать. Патовая ситуация для меня.
Миниатюры
Нажмите на картинку для увеличения

Название:  Безымянный.PNG
Просмотров: 65
Размер:  5.7 Кбайт  


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 19.11.2014, 19:33   #22
СВМ
Senior Member
 
Регистрация: Jan 2012
Адрес: Саратов
Сообщения: 179
Благодарил(а): 1 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата:
Сообщение от Arsie Посмотреть сообщение
Картинка 1 не содержит осмысленного алгоритма, туда некуда и нечего вставлять.
Протестую. Алгоритм картинки предельно простой: сообщать о чтении нуля из памяти. Он выполняется правильно. Вопрос остаётся: как предотвратить чтение нуля из памяти? Предложенный Вами способ не помогает, см. картинку Ловушка нуля 1:
Цитата:
Сообщение от Arsie Посмотреть сообщение
Ну вы разве не видите, что там числа одновременно больше друг друга и меньше друг друга? Ставите AND и получаете флаг "здесь что-то не так".
Я вижу три единицы: А<=B, A==B, A>=B. Это означает, что qnan равен сам себе, что прямо противоречит описанию, цитату из которого я привёл на картинке: "qnan не равен сам себе". Вопрос остаётся: как поймать qnan? Я надеюсь, что это проще, чем ловить нуль в делителе, на что требуется три блока.
Цитата:
Сообщение от Arsie Посмотреть сообщение
Спросите нормально, чтобы я не гадал, что же именно вам нужно и я вам обязательно помогу.
Мне нужно, чтобы при чтении памяти SMLogix возвращал не нуль, а то, что в памяти записано. Прошу привести простейший пример, в котором при первом чтении памяти читается не нуль, а содержимое памяти. Очень надеюсь на Вашу помощь.
Миниатюры
Нажмите на картинку для увеличения

Название:  Ловушка нуля 1.jpg
Просмотров: 48
Размер:  89.4 Кбайт  
СВМ вне форума   Ответить с цитированием
Старый 21.11.2014, 10:26   #23
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 16 043
Благодарил(а): 9 раз(а)
Поблагодарили: 481 раз(а) в 439 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата
Сообщение от СВМ Посмотреть сообщение
Протестую. Алгоритм картинки предельно простой: сообщать о чтении нуля из памяти. Он выполняется правильно. Вопрос остаётся: как предотвратить чтение нуля из памяти? Предложенный Вами способ не помогает, см. картинку Ловушка нуля 1:
Вы меня явно не слышите. И не услышите до тех пор, пока будете называть кирпич стеклянным, а стекло деревянным.

Вам нужно не "предотвратить чтение нуля из памяти", а получить действительно значение. Ноль тоже может быть действительным значением, записанным в память.

До получения действительного значения у вас всё равно будет ноль, но только уже недействительный ноль.



Цитата
Сообщение от СВМ Посмотреть сообщение
Я вижу три единицы: А<=B, A==B, A>=B. Это означает, что qnan равен сам себе, что прямо противоречит описанию,
Значит блок в вашем контроллере работает с ошибкой. Что у вас за контроллер и какова версия ядра в нём?


Цитата
Сообщение от СВМ Посмотреть сообщение
цитату из которого я привёл на картинке: "qnan не равен сам себе". Вопрос остаётся: как поймать qnan? Я надеюсь, что это проще, чем ловить нуль в делителе, на что требуется три блока.
В том, что я вижу, ноль на делителе и не нужно ловить. Вы ограничили сами себя, накинувшись на самое бессмысленное место в программе.

Просчитайте алгоритм чуть дальше, чем на один шаг и вы поймёте, что бесполезно тратите своё время.


Цитата
Сообщение от СВМ Посмотреть сообщение
Мне нужно, чтобы при чтении памяти SMLogix возвращал не нуль, а то, что в памяти записано. Прошу привести простейший пример, в котором при первом чтении памяти читается не нуль, а содержимое памяти. Очень надеюсь на Вашу помощь.
При чтении памяти всегда возвращается то, что в ней записано. Но пока память не готова, чтения из неё вообще не происходит.

Покажите ваш алгоритм и я скажу, что нужно делать. Куда-то же ваше число уходит, правильно? Куда оно уходит?


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 21.11.2014, 19:50   #24
СВМ
Senior Member
 
Регистрация: Jan 2012
Адрес: Саратов
Сообщения: 179
Благодарил(а): 1 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Не понимаю, как работает схема

Цитата:
Сообщение от Arsie Посмотреть сообщение
При чтении памяти всегда возвращается то, что в ней записано. Но пока память не готова, чтения из неё вообще не происходит.
Я это понимаю так:
"При чтении памяти всегда возвращается то, что в ней записано. Но пока память не готова, SMLogix возвращает нуль и разработчик должен это учитывать."
Я понял, как работает схема, и благодарен Вам за терпение и помощь.
СВМ вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать свои сообщения

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
SM CONNECT (Подробная инструкция в картинках как настроить) alekseyeve SMConnect & SMConfig 204 22.11.2021 19:15
Как работает блок вычисления производной Адский_Электрик SMLogix 2 31.07.2020 11:56
Как построить отказоустойчивую сеть SMconnect? Bayk SMConnect & SMConfig 19 16.05.2020 14:31
Как работает дистанционный Пуск-стоп? AlexSku SMConstructor (теплопункты) 8 02.04.2020 16:54
Контроллер работает при отключенном питании??? (решено) Max2114 Вопросы о Pixel 9 13.05.2015 12:20


Часовой пояс GMT +4, время: 07:42.


Версия vBulletin: 3.8.3
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2021