Страница 389 из 775 ПерваяПервая ... 289339379387388389390391399439489 ... ПоследняяПоследняя
Показано с 3,881 по 3,890 из 7742

Тема: Экспресс вопрос (ответ)

  1. #3881
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    8,241

    По умолчанию

    Цитата Сообщение от Чили-Рома Посмотреть сообщение
    Да он пока элементарный. Линия розлива, 1й датчик на подаче тары, 2й - на наклейке этикетки, 3й на конвейере ГП считает коробки, ну и тумблер, чтобы ПР200 знало сколько бутылок суют в коробку (8 или 10, 10 или 12 на разных линиях).
    Пр200 считает сигналы датчиков (передает 3 float счетчика в облако), считает брак тары и этикеток (передает разницу Сч1 и Сч2 со Сч3*бутылок_в_коробке - 2 int переменных).
    Все это должно делаться на 8 линиях. Но переменных в одной ПР200 хватило только на 7, и то я урезал по 1 переменной на каждой линии.

    Есть еще такая фишка, что одновременно могут лить не более 4 линий. Вот сейчас задумался, как это использовать.
    Вам достаточно UINT диапазона(0-65535)! Вы же в ПР200 всё считаете, при переходе счётчика через ноль, добавляете 65536 к значению и всё, количество необходимых регистров для сетевых переменных уменьшится в 2 раза и Вам хватит с избытком!

    Вы же написали ранее про модуль дискретного ввода, это я про то, как организовать подсчёт в ПР200 используя модуль дискретного ввода и его счётчики на каждом входе!
    Я ранее выкладывал как из двух 16 битных счётчиков(универсальных из ОЛ) сделать 32 битный:


    32 бит. счётчик_1.PNG

    Примерно как-то так, но со своей спецификой, надо учитывать, что значения могут перескакивать через несколько единиц при опросе по сети! Короче, надо сформировать сигнал прохода счётчика через ноль!
    Можно так:

    Переход через _0.PNG

    Получается как-то так:

    Переход через _0_2.PNG

    И здесь обсуждалось как разбить 32 битную целочисленную переменную на два регистра: http://www.owen.ru/forum/showthread.php?t=29262
    Последний раз редактировалось Сергей0308; 13.09.2018 в 22:04.
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

  2. #3882
    Пользователь
    Регистрация
    30.11.2017
    Адрес
    Егорьевск
    Сообщений
    164

    По умолчанию

    Цитата Сообщение от Сергей0308 Посмотреть сообщение
    Вам достаточно UINT диапазона(0-65535)! Вы же в ПР200 всё считаете, при переходе счётчика через ноль, добавляете 65536 к значению и всё, количество необходимых регистров для сетевых переменных уменьшится в 2 раза и Вам хватит с избытком!

    Вы же написали ранее про модуль дискретного ввода, это я про то, как организовать подсчёт в ПР200 используя модуль дискретного ввода и его счётчики на каждом входе!
    Я ранее выкладывал как из двух 16 битных счётчиков(универсальных из ОЛ) сделать 32 битный:


    32 бит. счётчик_1.PNG

    Примерно как-то так, но со своей спецификой, надо учитывать, что значения могут перескакивать через несколько единиц при опросе по сети! Короче, надо сформировать сигнал прохода счётчика через ноль!
    Можно так:

    Переход через _0.PNG

    Получается как-то так:

    Переход через _0_2.PNG

    И здесь обсуждалось как разбить 32 битную целочисленную переменную на два регистра: http://www.owen.ru/forum/showthread.php?t=29262
    Спасибо, что ткнули меня в инфу от том, что МВ110 считает только в UINT. Значит его в топку. Потому что я так и не увидел, как передавать 32-битное число в 1 регистре. Видимо никак. Либо запрашивать 2 регистра, либо передавать 2 1-регистровых переменных (ОРС это, как я понимаю можно реализовать, а в облаке, увы, нет, там нет ни суммирования переменных, ни перемножения). Можно, конечно, увеличить диапазон счетчика до 655350, уменьшив точность до десятков (в облаке есть множитель переменной). Но лучше я расширю диапазон переменных за счет второго интерфейса.

    О, у МВ210 оказывается 32-битные счетчики (аж 20 шт у МВ210-202(204)). И 2 интерфейса Ethernet, один сразу в облако пуляет, а другой можно, наверное, через ПР-МИ485 связать с rs-485 №2 ПР200, который будет мастером.
    Последний раз редактировалось Чили-Рома; 14.09.2018 в 10:15.

  3. #3883
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    3,841

    По умолчанию

    Цитата Сообщение от Чили-Рома Посмотреть сообщение
    Спасибо, что ткнули меня в инфу от том, что МВ110 считает только в UINT. Значит его в топку. Потому что я так и не увидел, как передавать 32-битное число в 1 регистре. Видимо никак. Либо запрашивать 2 регистра, либо передавать 2 1-регистровых переменных (ОРС это, как я понимаю можно реализовать, а в облаке, увы, нет, там нет ни суммирования переменных, ни перемножения). Можно, конечно, увеличить диапазон счетчика до 655350, уменьшив точность до десятков (в облаке есть множитель переменной). Но лучше я расширю диапазон переменных за счет второго интерфейса.

    О, у МВ210 оказывается 32-битные счетчики (аж 20 шт у МВ210-202(204)). И 2 интерфейса Ethernet, один сразу в облако пуляет, а другой можно, наверное, через ПР-МИ485 связать с rs-485 №2 ПР200, который будет мастером.
    Не наводите тень на плетень, что значит не увидел как передавать 32-битное число.
    В ПР разбиваете 32-битное число на младшее и старшее слово и укладываете их в две смежные сетевые переменные, например в 512 и 513. Способов как разбить 32-битное число на младшее и старшее слов уже приводилось масса.
    Далее в Облаке заводите переменную, с 32-битным форматом(Int32, Uint32) какой Вам нужен, а в качестве адреса указываете адрес сетевой переменной ПР с младшим словом, например 512(см выше).
    И все никаких суммирований или перемножений не потребуется.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  4. #3884
    Пользователь
    Регистрация
    30.11.2017
    Адрес
    Егорьевск
    Сообщений
    164

    По умолчанию

    Цитата Сообщение от petera Посмотреть сообщение
    Не наводите тень на плетень, что значит не увидел как передавать 32-битное число.
    В ПР разбиваете 32-битное число на младшее и старшее слово и укладываете их в две смежные сетевые переменные, например в 512 и 513. Способов как разбить 32-битное число на младшее и старшее слов уже приводилось масса.
    Далее в Облаке заводите переменную, с 32-битным форматом(Int32, Uint32) какой Вам нужен, а в качестве адреса указываете адрес сетевой переменной ПР с младшим словом, например 512(см выше).
    И все никаких суммирований или перемножений не потребуется.
    Ну вот, спасибо, стало понятнее, как, но не понятнее зачем. Минус те же 2 регистра в памяти ПР200. По мне проще во float перевести.

  5. #3885
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    3,841

    По умолчанию

    Цитата Сообщение от Чили-Рома Посмотреть сообщение
    Ну вот, спасибо, стало понятнее, как, но не понятнее зачем. Минус те же 2 регистра в памяти ПР200. По мне проще во float перевести.
    32-битная переменная - хранит точное значение от 0 до 4 294 967 295, где все 10 цифр точные
    а float только приблизительное, в лучшем случае точность ограничена 7 знаками.

    ЗЫ.
    Например
    4004967095 наиболее точное приближенное значение float 4.004967168 E9 или 4004967168
    4294967095 ==> 4.29496704 E9 = 4294967040
    1000000111 ==> 1.000000128 E9 = 1000000128
    1000000011 ==> 1.0 E9 = 1000000000
    Последний раз редактировалось petera; 14.09.2018 в 12:42.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  6. #3886
    Пользователь
    Регистрация
    30.11.2017
    Адрес
    Егорьевск
    Сообщений
    164

    По умолчанию

    Цитата Сообщение от petera Посмотреть сообщение
    32-битная переменная - хранит точное значение от 0 до 4 294 967 295, где все 10 цифр точные
    а float только приблизительное, в лучшем случае точность ограничена 7 знаками.

    ЗЫ.
    Например
    4004967095 наиболее точное приближенное значение float 4.004967168 E9 или 4004967168
    4294967095 ==> 4.29496704 E9 = 4294967040
    1000000111 ==> 1.000000128 E9 = 1000000128
    1000000011 ==> 1.0 E9 = 1000000000
    О как, век живи - век учись. Ну, мне 6 знаков точности выше крыши.)

  7. #3887

    По умолчанию

    Подскажите как настроить аналоговый вход в ПР 200. Пытаюсь создать управление котлом двухпозиционное по гистерезису, уставка согласно графика от температуры наружного воздуха по точкам, (вводимые с экрана - надо разобраться). Хотел бы прикрепить резистор, допустим 5 кОм что бы он график уменьшал или добавлял.. например при 0 ОМ 5 градусов отнималось от температуры уставки а при 5 к Ом 5 градусов добавлялось. Получиться при 2.5 кОм уставка соответствует строго графику. Как параметры выставить на аналоговом входе, или это в программе блоками нужно?

  8. #3888
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    8,241

    По умолчанию

    Цитата Сообщение от Andrei Z Посмотреть сообщение
    Подскажите как настроить аналоговый вход в ПР 200. Пытаюсь создать управление котлом двухпозиционное по гистерезису, уставка согласно графика от температуры наружного воздуха по точкам, (вводимые с экрана - надо разобраться). Хотел бы прикрепить резистор, допустим 5 кОм что бы он график уменьшал или добавлял.. например при 0 ОМ 5 градусов отнималось от температуры уставки а при 5 к Ом 5 градусов добавлялось. Получиться при 2.5 кОм уставка соответствует строго графику. Как параметры выставить на аналоговом входе, или это в программе блоками нужно?
    Макрос гистерезиса есть в онлайн базе макросов, для полного счастья вот макрос преобразования(переноса) диапазонов.
    Вложения Вложения
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

  9. #3889

    По умолчанию

    Посмотрите тут. Может то, что нужно.

    http://www.owen.ru/forum/showthread....l=1#post286801

  10. #3890

    По умолчанию

    Макрос гистерезиса использовал, с трудом намудрил график температурный по 5 точкам уставок, сейчас гляну как опытные сделали такой макрос.
    Но мой вопрос остаётся открытым, потому как при 0 градусов на улице когда светит солнце или когда дует ветер с тучами, уставка должна быть разной. Чтобы операторы не нажимали кнопки, хочу поставить резистор, при прокрутке которого.. график на всех температурах наружного воздуха, или подымался или опускался.. как бы прибавляя к уставке своё значение.

Страница 389 из 775 ПерваяПервая ... 289339379387388389390391399439489 ... ПоследняяПоследняя

Похожие темы

  1. CODESYS V3.5. Вопросы и ответы
    от ООО "БЛС инжинеринг" в разделе ПЛК (среда CODESYS V3.5)
    Ответов: 7086
    Последнее сообщение: Вчера, 17:40
  2. ВОПРОС-ОТВЕТ (отвечаем на простые вопросы от новичков)
    от Serge_UA в разделе ПЛК (среда CoDeSys V2.3)
    Ответов: 10435
    Последнее сообщение: 24.04.2024, 19:41
  3. вопрос-ответ , или а поговорить????
    от Павел Братковский в разделе Трёп (Курилка)
    Ответов: 10
    Последнее сообщение: 24.01.2018, 11:05
  4. Преобразовать ответ
    от IIeroniux в разделе ПЛК1хх
    Ответов: 3
    Последнее сообщение: 05.10.2015, 17:45

Ваши права

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