С нуля буду изучать все предложенные варианты
Логические микросхемы
- Сообщения: 57
- Зарегистрирован: Чт янв 02, 2020 13:58:52
- Реклама
Ещё раз задам вопрос- ТТЛ логика (типа 155** советская) обязательна, или можно использовать импорт, и, лучше всего КМОП логику?
Ну, если так, то это достаточно просто/С нуля буду изучать все
Последний раз редактировалось АлександрЛ Пн июл 06, 2026 01:29:51, всего редактировалось 1 раз.
- Сообщения: 57
- Зарегистрирован: Чт янв 02, 2020 13:58:52
С удовольствием приму любое решение - чем проще тем лучшеАлександрЛ писал(а): Пн июл 06, 2026 01:19:17![]()
Ещё раз задам вопрос- ТТЛ логика (типа 155** советская) обязательна, или можно использовать импорт, и, лучше всего КМОП логику?
- Сообщения: 57
- Зарегистрирован: Чт янв 02, 2020 13:58:52
Не проблема. Две трети пути уже пройденоu37 писал(а): Вс июл 05, 2026 23:11:26 На самом деле, у ТС есть некий МК с выходным портом и надо управлять 50 реле.
Т.е. из 8 бит надо собрать защелку адреса, данных и регистровое поле на 50 выходов. Долго, нудно, мучительно, нафиг. ))
Пусть учится сам.
Ну, тогда вот:
На входах 1~128 выставляется нужный код от "00000000" (00H) до "11111111" (FFH)
Положительным импульсом по входу Latch данные переписваются в дешифраторы, и, на одном из выходов U1 и U2 появлются логические "единички"
Ячейка реле подсоединяется одним из входов к дешифратору U1, а вторым входом- к дешифратору U2. При появлении на обоих входах ячейки "единичек", срабатывает реле.
Ну, как-то так...
зы.. Если нужно, чтобы одна и та же ячейка срабатывала при разных входных кодах, то придётся дополнительно сделать ещё "монтажное ИЛИ" - несколько диодов анодами к дешифраторам, катодами ко входу ячейки, и резистор от входа ячейки на "землю".
Спойлер
Положительным импульсом по входу Latch данные переписваются в дешифраторы, и, на одном из выходов U1 и U2 появлются логические "единички"
Ячейка реле подсоединяется одним из входов к дешифратору U1, а вторым входом- к дешифратору U2. При появлении на обоих входах ячейки "единичек", срабатывает реле.
Ну, как-то так...
зы.. Если нужно, чтобы одна и та же ячейка срабатывала при разных входных кодах, то придётся дополнительно сделать ещё "монтажное ИЛИ" - несколько диодов анодами к дешифраторам, катодами ко входу ячейки, и резистор от входа ячейки на "землю".
- Реклама
Если безплатные советы не помогут - обращайтесь - можно вместо денег готовый продукт, кстати.
Ибо решение есть и вполне простое, просто требует специфического опыта.
Кстати тоже "по секрету" можете поведать какой у Вас процессор/контроллер ? )
Но не настаиваю.
Ибо решение есть и вполне простое, просто требует специфического опыта.
Спойлер
( Подсказываю " по секрету" : без 50(пятидесяти) триггеров Вам всё равно не обойтись..Кстати тоже "по секрету" можете поведать какой у Вас процессор/контроллер ? )
< виртуальная "кнопочка" >--( WWW ) <- Убедительная просьба интересующимся старыми компьютерами типа РК86 - не пишите в теме в барахолке, пишите Ваши вопросы в ( лс ) пожалуйста
- Сообщения: 618
- Зарегистрирован: Пн фев 16, 2026 17:30:02
Любой микроконтроллер с большим числом ног, либо с расширителями выхода. Самое простое - конструктор Ардуино. Однако, для этого нужен хоть какой-то опыт таких работ. Но решается очень и очень просто.
Однако, здесь, как мне кажется, одной только этой схемой не обойтись. Полноценная автоматизация линии производства - задача непростая. Поскольку помимо выходов на релюшки, должно быть достаточное количество датчиков, отслеживающих код технологического процесса. Чтобы не получилось, когда где-то по ходу что-то пошло не так, но управляющий контроллер это не определил и идет дальше, и ломает весь техпроцесс.
Лет 50 назад такие задачи могли решаться на дискретной логике. Но это было капец как громоздко - целые шкафы электроники.
Сейчас сия штука выглядит куда компактнее.
Скажите по секрету, зачем они там? На выходах нужны обычные транзисторные усилители для коммутации реле, но триггеры не нужны. Максимум - 8-битный триггер входного кода, да и то, как мне кажется, он там нафик не нужон.petrenko писал(а): Пн июл 06, 2026 03:06:05 без 50(пятидесяти) триггеров Вам всё равно не обойтись..
Схема простая - дешифратор входного 8-битного кода с разложением на 256 выходов, матрица коммутации 256 строк на 50 столбцов, и 50 выходных усилителей для реле. Единственная сложность - дохрена компонентов.
Все эти триллионы миллиардов тысяч вариантов комбинаций - это из другой оперы. Комбинаций всего 256, по числу входных кодов из 8-битной шины.
Вот схема каскадирования дешифраторов (правда, здесь на 128 линий):

Для 256 линий потребуется 16 таких элементов плюс один (который слева по схеме). Далее, на матрице 256 х 50 с помощью диодного "монтажного ИЛИ" с каждой линии набираем в столбцы нужные комбинации включаемых релюшек для каждой строки. На выходах столбцов стоят обычные транзисторные усилители для коммутации реле.
Всё! Никаких 50 триггеров, никаких триллиардов комбинаций.
- Сообщения: 3277
- Зарегистрирован: Пт ноя 02, 2018 16:14:36
Проще всего (хотя и не дешевле) добавить к Овену блок(и) расширения входов-выходов. Входов ведь тоже не хватает?
Нет ничего практичнее хорошей теории
- Сообщения: 618
- Зарегистрирован: Пн фев 16, 2026 17:30:02
В общем, концептуально эта схема должна выглядеть вот так (показана только часть схемы) :
В матрице диодами задаются комбинации включаемых реле для каждой строки, соответствующей входному коду. Дешифраторы входного кода - 74HC154, потребуется 17 корпусов (16 микросхем по 16 выходов + 1 микросхема селектора). Схема выходного усилителя для реле - это концепция, уточняется по месту.

В матрице диодами задаются комбинации включаемых реле для каждой строки, соответствующей входному коду. Дешифраторы входного кода - 74HC154, потребуется 17 корпусов (16 микросхем по 16 выходов + 1 микросхема селектора). Схема выходного усилителя для реле - это концепция, уточняется по месту.

Видимо, вам следует изобразить циклограмму. Делается это так. Снизу горизонтально проводится ось времени, выше её горизонтальными линиями показываются процессы, когда они активны, с привязкой ко времени и между собой, слева они подписываются: скажем, открыт клапан такой-то. С циклограммой сразу становится понятно, как её реализовать. Попробуйте сделать и выложить.IlyaTsyu писал(а): Пн июл 06, 2026 00:22:58Значит я просто присоединю к реле сразу несколько устройств. Грубо говоря реле №1 включает компрессор, реле №2 клапан, реле№3 компрессор и клапан одновременно, так должно получится?
И хрюкотали зелюки,
Как мюмзики в мове.
На каждый РКН
Найдётся VPN.
Как мюмзики в мове.
На каждый РКН
Найдётся VPN.
- Сообщения: 1860
- Зарегистрирован: Чт авг 10, 2017 20:57:51
А мне страшно представить как это будет делаться.
256 на 50.
До 12800 диода. Ну скажем 1200.
Какая ремонтопригодность будет?
Как, если понадобится, сменить "программу"?
Страшно!
256 на 50.
До 12800 диода. Ну скажем 1200.
Какая ремонтопригодность будет?
Как, если понадобится, сменить "программу"?
Страшно!
- Сообщения: 1623
- Зарегистрирован: Пн июн 12, 2017 13:29:46
Производственная линия. Да уж, а как всё невинно начиналось. Как я понял, основная задача - сэкономить на специалистах и рабочих местах.
- Сообщения: 1860
- Зарегистрирован: Чт авг 10, 2017 20:57:51
А если поставим ЕПРОМ. если организация х8 - 6 чипа - 48 реле
Если х16 3 чипа
Смена программу получится легко.
Если х16 3 чипа
Смена программу получится легко.
- Сообщения: 1302
- Зарегистрирован: Пн май 01, 2017 20:01:45
Специалистов просто нет, вымерли. Остались только программеры, которые сами лампочку не вкрутят. И готовят сейчас исключительно программеров, т.е. профессия вымерла.
По subj - всё просто, но кошмарно.
1) порт представляет собой 8 бит, из них:
d7 = strobe
d6 = on/off
d5..d0 = addr.
2) метод работы - записать адрес реле с выставленным/сброшенным d6 и 0/1 в d7. Данное реле переключится.
3) реализация
d5..d0 подаются на декодеры типа 74HC138 3б=8.
2 уровня. Старший, 1 шт.:
декодер старшего уровня подключаются к d5-d4-d3 и формирует 8 селекторов. В качестве выбора на него подается d7.
Младший, 7-8 шт.:
декодеры подключаются к d2-d1-d0 (все параллельно к входам), и на каждый подается собственный селектор от декодера верхнего уровня.
В результате получается 56-64 выхода строба. Эти стробы подаются на массу D-триггеров типа 74HC74 (2 шт. в корпусе), на входы "С". Их входы "D" все соединить параллельно и подключить к d6.
Входы S повесить в неактивное состояние (1), а R соединить и подключить к питанию через RC для начального сброса устройства в предсказуемое состояние.
На выход триггеров надо поставить транзистор и реле.
Итого, 8 микросхем выборки и 25 микросхем хранения состояния.
remark.
Если "хочется", можно сделать общий сброс устройства. Для этого возьмите неиспользуемый строб (№50) и подключите к входам R триггеров. Тогда общий сброс делается одним обращением по данному номеру.
По subj - всё просто, но кошмарно.
1) порт представляет собой 8 бит, из них:
d7 = strobe
d6 = on/off
d5..d0 = addr.
2) метод работы - записать адрес реле с выставленным/сброшенным d6 и 0/1 в d7. Данное реле переключится.
3) реализация
d5..d0 подаются на декодеры типа 74HC138 3б=8.
2 уровня. Старший, 1 шт.:
декодер старшего уровня подключаются к d5-d4-d3 и формирует 8 селекторов. В качестве выбора на него подается d7.
Младший, 7-8 шт.:
декодеры подключаются к d2-d1-d0 (все параллельно к входам), и на каждый подается собственный селектор от декодера верхнего уровня.
В результате получается 56-64 выхода строба. Эти стробы подаются на массу D-триггеров типа 74HC74 (2 шт. в корпусе), на входы "С". Их входы "D" все соединить параллельно и подключить к d6.
Входы S повесить в неактивное состояние (1), а R соединить и подключить к питанию через RC для начального сброса устройства в предсказуемое состояние.
На выход триггеров надо поставить транзистор и реле.
Итого, 8 микросхем выборки и 25 микросхем хранения состояния.
remark.
Если "хочется", можно сделать общий сброс устройства. Для этого возьмите неиспользуемый строб (№50) и подключите к входам R триггеров. Тогда общий сброс делается одним обращением по данному номеру.
Boт Вы сейчас безплатно выполнили для t.s. почти всю работу.u37 писал(а): Пн июл 06, 2026 09:38:33...
По subj - всё просто, но кошмарно.
1) порт представляет собой 8 бит, из них:
d7 = strobe
d6 = on/off
d5..d0 = addr.
2) метод работы - записать адрес реле с выставленным/сброшенным d6 и 0/1 в d7. Данное реле переключится.
3) реализация ...
< виртуальная "кнопочка" >--( WWW ) <- Убедительная просьба интересующимся старыми компьютерами типа РК86 - не пишите в теме в барахолке, пишите Ваши вопросы в ( лс ) пожалуйста
- Сообщения: 618
- Зарегистрирован: Пн фев 16, 2026 17:30:02
u37, зачем это так? Если уж считаете себя афигенным специалистом, тогда делайте соответствующе.
Вот именно, что с такими "специалистами" каши не сваришь - вместо масла в кашу они наложат маринованных огурцов с молоком. Вначале пишут, что нереализуемо и дескать хватит фантазировать, а потом сами пускаются в таааакие фантазии...
Если переформулировать ТЗ топикстартера, тогда лучше сделать расширитель выходов - сдвиговые регистры с последовательной загрузкой и параллельным выходом. 7 регистров 74HC595, 56 бит, где каждый бит последовательных данных отражает вкл/выкл состояние реле:

В последовательном коде загружаются данные для вкл/выкл всех 50-ти реле (56 бит) и подается импульс STROBE, и на выходах сдвиговых регистров появляется загруженная комбинация включаемых реле.
Всё остальное делается внутри ПЛК Овен.
На мой взгляд, это наиболее правильный вариант. Просто вместо параллельного 8-битного кода на выходе ПЛК использовать последовательный интерфейс для последующего его преобразования в параллельный на 50 выходов.
Вот именно, что с такими "специалистами" каши не сваришь - вместо масла в кашу они наложат маринованных огурцов с молоком. Вначале пишут, что нереализуемо и дескать хватит фантазировать, а потом сами пускаются в таааакие фантазии...
Если переформулировать ТЗ топикстартера, тогда лучше сделать расширитель выходов - сдвиговые регистры с последовательной загрузкой и параллельным выходом. 7 регистров 74HC595, 56 бит, где каждый бит последовательных данных отражает вкл/выкл состояние реле:

В последовательном коде загружаются данные для вкл/выкл всех 50-ти реле (56 бит) и подается импульс STROBE, и на выходах сдвиговых регистров появляется загруженная комбинация включаемых реле.
Всё остальное делается внутри ПЛК Овен.
На мой взгляд, это наиболее правильный вариант. Просто вместо параллельного 8-битного кода на выходе ПЛК использовать последовательный интерфейс для последующего его преобразования в параллельный на 50 выходов.
- Сообщения: 3277
- Зарегистрирован: Пт ноя 02, 2018 16:14:36
МПР51- контроллер специфический. Он умеет только изображать термопрофили: коптить колбасу, делать тушёнку, я тоже имел с ним дело, сушил доски. Программа состоит из шагов, переход на следующий шаг - или по условию, или по таймеру. Память небольшая, максимальное число шагов - 99. Кроме выходов, предназначенных для регулирования температуры и влажности есть 8 выходов для вспомогательного оборудования. Каждый из выходов может быть включен или выключен при переходе на следующий шаг. У ТС нагрузок больше восьми, поэтому ему нужен расширитель. Напрашивается ПЗУ: 7 выходов - номер шага в двоичном коде (шагов 99, восьмой выход лишний), в ПЗУ прописаны нагрузки, которые должны быть включены на данном шаге. Поскольку в ТЗ упоминается 155 серия, единственный вариант- 155РЕ3. Если ограничится сорока восемью нагрузками - шесть корпусов на каждые 32 шага.
Сложность в другом: у МПР51 всего 5 входов, три из них - для термометра и психрометра. Это уже не контроллер, а командоаппарат, даже датчик закрытия крышки некуда приткнуть. В дополнение к терморегулятору надо что-то другое, какой-нибудь ПЛК.
Сложность в другом: у МПР51 всего 5 входов, три из них - для термометра и психрометра. Это уже не контроллер, а командоаппарат, даже датчик закрытия крышки некуда приткнуть. В дополнение к терморегулятору надо что-то другое, какой-нибудь ПЛК.
Нет ничего практичнее хорошей теории
- Сообщения: 1302
- Зарегистрирован: Пн май 01, 2017 20:01:45
Ну, значит правы были те, кто предлагал EPROM.
Технология "EPROM" чуть-чуть неудобная (сарказм) в плане модификации и отладки кода. А обучаемый EPROM есть тот-же МК. В который тоже надо как-то заливать конфигурацию.
С другой стороны, ресурсы контроллера требуют подпорок, которые можно сделать только на другом контроллере. Зачем делать два костыля?
Нужно просто оставить на основном контроллере общие функции, а всё крутить на каком-нибудь МК, коих огромный выбор. И там уже решать вопрос о реле и их управлении (как и другие датчики, да и сама программа управления).
Хорошо, что есть HochReiter, знающий это железо.
Технология "EPROM" чуть-чуть неудобная (сарказм) в плане модификации и отладки кода. А обучаемый EPROM есть тот-же МК. В который тоже надо как-то заливать конфигурацию.
С другой стороны, ресурсы контроллера требуют подпорок, которые можно сделать только на другом контроллере. Зачем делать два костыля?
Нужно просто оставить на основном контроллере общие функции, а всё крутить на каком-нибудь МК, коих огромный выбор. И там уже решать вопрос о реле и их управлении (как и другие датчики, да и сама программа управления).
Хорошо, что есть HochReiter, знающий это железо.
- Сообщения: 3277
- Зарегистрирован: Пт ноя 02, 2018 16:14:36
u37, ТС не программист, ему удобнее будет ПЛК или недо-ПЛК, оно же "интеллектуальное (программируемое) реле". LD или FBD - это во много раз проще C.
Нет ничего практичнее хорошей теории
- Сообщения: 1302
- Зарегистрирован: Пн май 01, 2017 20:01:45
Да, перегнул. Впрочем, я имел в виду скорее "шаблоны поведения", а не всю state maсhine. Есть же некие атомарные действия, типа - выставить температуру и сообщить о достижении.
Конечно, сие будет программировать специалист.
Очень часто шеф радует - а давай на raspberry pi ... и кончается это одним и тем-же - оно с железом не работает и RT не OS. А именно, подчиненным МК f030 разной жирности.
Конечно, сие будет программировать специалист.
Очень часто шеф радует - а давай на raspberry pi ... и кончается это одним и тем-же - оно с железом не работает и RT не OS. А именно, подчиненным МК f030 разной жирности.


