Страница 4 из 5 ПерваяПервая ... 2345 ПоследняяПоследняя
Показано с 31 по 40 из 43

Тема: Сеть из ПЛК 150 по RS485/Ethernet

  1. #31

    По умолчанию

    Проблема как и предполагал: предыдущий ответ п.2 часть 2.
    Переменные скорее всего записываются.
    Но уже в следующем цикле ПЛК Вы им снова приравниваете значения var11, var22, var33...
    Вопрос видимо в неточном понимании работы ПЛК (в принципе, не ОВЕН)
    1.Опрашивается область входов.
    2.Выполняется программа. С первой строчки до последней, последовательно, строчка за строчкой. (в примитиве).
    3.Результаты записываются в область выходов.
    4.Идем в пункт 1.

    У Вас в 1 шаге переменные могут записываться, но уже во втором Вы видите старые значения, потому, что записали из в теле программы.
    И уже в шаге 3, как и предполагалось видите не измененные значения.

  2. #32

    По умолчанию

    Теперь понятно, сам замечал что при смене значения(в самом ПЛК), новое значение держится буквально мгновение а потом меняется на предыдущее, но думал это проблема в записи.

    Но как сделать чтобы они не менялись? В документации есть что-нибудь про это?

    Мне-то нужно управлять с сервера(отдельный ПК) через RS-485 стендом у которого уже есть локальный ПК с программой. Т.е. я могу отправлять команды как с локального, так и с удаленного(сервер) ПК. Приоритет при этом за локальным.

  3. #33

    По умолчанию

    Тут уж как Вы фантазию включите...
    Например можно сравнивать значения, поступающие с ПК с предыдущими значениями, поступившими с ПК.
    И если значения изменились - записать то, которое нужно в нужную переменную.

    Ну и не делать изначального присвоения значения переменной значением другой переменной.
    Саму переменную при инициализации можно инициализировать любым числом. А переменные из конфигурации ПЛК так же можно объявлять в программе через МЭК адрес.

  4. #34

    По умолчанию

    Задаю значение переменных в ПЛК, вижу эти данные в Scada, но при попытке записи любого значения записывается единица, т.е. если переменная была равна 10 то она меняется на 11. Менял значения настройки сервера OPC: скорость обмена данными, тип преобразователя, протокол, а также тип переменной и функции чтения/записи - безрезультатно.

    До меня все никак не может дойти почему он при попытке записи переменной(любого числа) записывает(меняет) на единицу, т.е. ПК пишет в ПЛК но почему он не делает это правильно. При этом все настройки проверял по несколько раз, но наити ошибку так и не получилось.

    //В архиве сама прога(немного измененная)[1111.pro], а так же настройки конфигурации OPC-драйвера[21.mbc].
    Вложения Вложения
    • Тип файла: rar 1111.rar (8.5 Кб, Просмотров: 5)

  5. #35

    По умолчанию

    1. Так у вас же программа не изменилась... НИЧЕГО и не будет работать...
    2. Изменяется видимо по тому, что контроллер не стартуете. Так то вообще изменяться не должна...
    Начните с простого.
    Создайте две переменных.
    Одну на запись, одну на чтение.

    Убедитесь, что и читать и писать получается.
    дальше программно уже реализуйте то, что Вам необходимо.

  6. #36

    По умолчанию

    Извеняюсь, конфигурацию Modbus-драивера добавил, а программу обновить забыл. Выложил одну программу.

    Вот та с которой сейчас работаю. Переменные просто объявлены и никакой "затирки" по-идее быть не может, но проблема все таже.

    Алгоритм работы: CoDeSyS->Login->Start

    Далее записываю в первые 3 переменные какие-либо значение, ну скажем 10, 20, 30, в var4 и var5 оставляю без изменения(т.е. там 0). С помощью Matrikon вижу эти переменные: var1=10, var2=20, var3=30, var4=0, var5=0

    Опрос идет, пытаюсь записать в эти переменные с ПК: в var1-20, в var2-30, в var3-40, в var4-50, в var5-60, но вместо этих значений в ПЛК записывается следующее: var1=11, var2=21, var3=31, var4=1, var5=1
    При этом совершенно не важно что я хочу записать, на любое значение в ПЛК переменная увеличивается на 1.

    И вот тут у меня возникает вопрос - почему контроллер не хочет писать переменные?
    Вложения Вложения
    Последний раз редактировалось ck1zy; 26.04.2011 в 13:50.

  7. #37

    По умолчанию

    Может проблема в Matrikon и его надо настраивать каким-то специальным способом?

  8. #38

    По умолчанию

    Цитата Сообщение от Николаев Андрей Посмотреть сообщение
    Создайте две переменных.
    Одну на запись, одну на чтение.

    Убедитесь, что и читать и писать получается.
    Создал. Читает без проблем, а писать не хочет.

  9. #39
    Ельцов Андрей
    Гость

    По умолчанию

    Цитата Сообщение от ck1zy Посмотреть сообщение
    Извеняюсь, конфигурацию Modbus-драивера добавил, а программу обновить забыл. Выложил одну программу.

    Вот та с которой сейчас работаю. Переменные просто объявлены и никакой "затирки" по-идее быть не может, но проблема все таже.

    Алгоритм работы: CoDeSyS->Login->Start

    Далее записываю в первые 3 переменные какие-либо значение, ну скажем 10, 20, 30, в var4 и var5 оставляю без изменения(т.е. там 0). С помощью Matrikon вижу эти переменные: var1=10, var2=20, var3=30, var4=0, var5=0

    Опрос идет, пытаюсь записать в эти переменные с ПК: в var1-20, в var2-30, в var3-40, в var4-50, в var5-60, но вместо этих значений в ПЛК записывается следующее: var1=11, var2=21, var3=31, var4=1, var5=1
    При этом совершенно не важно что я хочу записать, на любое значение в ПЛК переменная увеличивается на 1.

    И вот тут у меня возникает вопрос - почему контроллер не хочет писать переменные?
    Скиньте настройку Лектуса, пожалуйста.

  10. #40

    По умолчанию

    Для опроса использую стандартный драивер-modbus, от лектуса отказался.

    Настроики либо в картинках http://www.owen.ru/forum/showpost.ph...1&postcount=25 либо в фаиле http://www.owen.ru/forum/showpost.ph...5&postcount=34
    Сама программа http://www.owen.ru/forum/showthread.php?t=9051&page=4

    Мне не понятно, почему пишет имеено таким образом. Опрашивает - идеально, но пишет каким-то непонятным мне способом. Вроде уже и настроики менял по-всякому и интернет облазил, но как писать правильно так и не понял. А время поджимает.

Страница 4 из 5 ПерваяПервая ... 2345 ПоследняяПоследняя

Ваши права

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