Профиль должен быть заполнен на русском языке кириллицей. Заполнение профиля заведомо ложными или некорректными данными - причина возможного отказа в регистрации на форуме.

Logo! Как разбить Int на биты?


Автор темы
Strohmann
осмотрелся
осмотрелся
Сообщения: 107
Зарегистрирован: 08 ноя 2010, 14:03
Ф.И.О.: Владимир
Благодарил (а): 2 раза
Поблагодарили: 3 раза

Logo! Как разбить Int на биты?

Сообщение Strohmann » 12 авг 2016, 05:36

Здравствуйте, товарищи!
Дано: Logo! 8 серии, панель KTP900 (как крайний вариант).
В виду жестких ограничений на количество входов/выходов в UDF возникает вопрос, как можно передавать в UDF большое количество битовых сигналов. Методология паковки битов (MUX, цепочка калькуляторов) достаточно понятна, а вот распаковка полученного значения вызывает затруднение.
Каким образом можно реализовать преобразование Int в битовые сигналы?

Аватара пользователя

Marrenoloth
завсегдатай
завсегдатай
Сообщения: 504
Зарегистрирован: 05 окт 2009, 10:51
Ф.И.О.: Тихомиров Дмитрий Викторович
Откуда: Москва
Благодарил (а): 15 раз
Поблагодарили: 18 раз
Контактная информация:

Logo! Как разбить Int на биты?

Сообщение Marrenoloth » 12 авг 2016, 08:27

Очень давно лого держал в руках последний раз... Побитовое сложение двух word или byte в нем есть? Если да, то можно складывать с 1, 2, 4 и прочими степенями 2 и смотреть, отличается ли от 0 полученное число.


Автор темы
Strohmann
осмотрелся
осмотрелся
Сообщения: 107
Зарегистрирован: 08 ноя 2010, 14:03
Ф.И.О.: Владимир
Благодарил (а): 2 раза
Поблагодарили: 3 раза

Logo! Как разбить Int на биты?

Сообщение Strohmann » 12 авг 2016, 08:48

Будь там возможность применять маски, стал бы я задавать вопрос?

Аватара пользователя

erv_asutp
осмотрелся
осмотрелся
Сообщения: 108
Зарегистрирован: 25 авг 2015, 11:55
Ф.И.О.: Ефименко Роман Владимирович
Откуда: Днепропетровск
Поблагодарили: 7 раз

Logo! Как разбить Int на биты?

Сообщение erv_asutp » 12 авг 2016, 13:33

Как вариант можно попробовать ShiftRegister. Генератор, счетчик сдвига, направление сдвига самому делать придется.

Аватара пользователя

Ka3ax
здесь недавно
здесь недавно
Сообщения: 14
Зарегистрирован: 30 окт 2012, 03:14
Ф.И.О.: Олд Белл
Откуда: Карасук, Новосибирской обл.

Logo! Как разбить Int на биты?

Сообщение Ka3ax » 25 авг 2016, 18:15

на форуме сименс, немецкоговорящий, попадалась UDF без ограничений на входа.
Вопрос частично понятен, как преобразовать INT в биты в UDF?
Причем здесь панель?
Я передаю INT в панель или контроллер и там обрабатывается.
Если по первому варианту, то на количество "камней" в UDF так же имеется ограничение.
Сильно не повыпендриваешься. Универсального способа нет.
Не могли бы пример задачи предоставить, что бы как то помыслить в одном русле, а не глобально.

ps
посмотрел немецкий сименс форум, тему убрали прикрепленную, со всякими решениями.
решения работы с битами там были еще применительно к 6ой версии.

повидимому сименс тактику поменял помощи, делает все, что бы только к ним обращались в сапорт.

Аватара пользователя

Ka3ax
здесь недавно
здесь недавно
Сообщения: 14
Зарегистрирован: 30 окт 2012, 03:14
Ф.И.О.: Олд Белл
Откуда: Карасук, Новосибирской обл.

Logo! Как разбить Int на биты?

Сообщение Ka3ax » 25 авг 2016, 18:23

psps
в примерах
http://w3.siemens.com/mcms/programmable ... fault.aspx
имеется пример Dezimal - BCD Konverter
http://www.automation.siemens.com/sales ... erters.zip
внутри и английские версии
полагаю, может почь


Вернуться в «LOGO!»



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей