Косвенная адресация Simatic без заморочек ) / Будни АСУшника
HTML-код
- Опубликовано: 8 янв 2025
- Пример косвенной адресации на SCL
По просьбам зрителей - карта МИР 2202 2013 9829 3288 Вячеслав Викторович С.
Целевое назначение - развитие канала (оборудование для съёмки, м.б. какие то мини стенды и т.п.)
Все плейлисты: / @slavaslavin1
для меня косвенная, это смещение в памяти, т.е. определяем для объекта например 16 байт для заданий/результата, и поехали прибавлять 16 байт до следующего объекта, интересно смотреть Ваши видео, спасибо
Все таки смысл косвенной адресации именно такой. Мы хотим обратиться к какой то переменной, но не знаем ее имени (читай адреса), но мы можем этот адрес высчитать допустим и инициализировать им другую переменную. И тогда мы говорим программе, вот в этой переменной - адрес, в котором лежат наши данные.
Этот смысл присущ в традиционном программировании. А Simatic приобщился, как смог ) В силу архитектуры и чего там ещё. В этом примере, то есть в SCL - наиболее четко отражен тот самый общепринятый смысл. Ну наверно потому что SCL ближе всех к обычному программированию ;)
@@SlavaSlavin1 не вижу, противоречий, даём ссылку на адрес, относительно его имею данные, не нужно устраивать case по входным данным, мы вычисляем и возвращаем результат
@@virtstark предыдущий ответ на бегу писал ) Мне показалось, что Вы говорите, что Вы мол только вот так понимаете ) А противоречий нет конечно
Добрый день, вставлю свои пять копеек по поводу клапанов. Контролировать только конечное положение клапана в корне не правильно, нужно также учитывать команду на него, а то придет слесарь ревизию сделать - откроет клапан принудительно и у вас отработает технология на открытый клапан (что то засыпите или нальёте куда не нужно)
Приветствую. Ну как бы тут без вариантов ) подали команду и ждём сигнала концевика. Каким образом ещё контролировать команду? Обратный сигнал от гальвано развязки на DI завести? Не практикуем вроде. А слесаря не придут, пока их не позовут.
PS А, да, алгоритм от концевиков работать не будет ни в какой части, без сигнала старт от оператора. Это уж конечно реализовано )
@@SlavaSlavin1 я про алгоритм работы предыдущего устройства, для его включения проверяем открытое положение клапана и то что подана команда на его открытие в автоматическом режиме (просто Q). Возможно не в тему написал, показалось что это будет важным замечанием.
@@PetrovAA да нет, Андрей, такие замечания нужны. Сами знаете, что такое незамыленный взгляд ) Спасибо, я подумаю. Над алгоритмом все равно ещё придется работать, поскольку пользователи как всегда в последний момент вспоминают, а мы же ещё и вот так хотели )
@@SlavaSlavin1 зачастую пользователи сами не понимают что им надо, если не сталкивались с чем то подобным.
@@PetrovAA ну тут уже плавный переход к сааавсем другой теме - ТЗ ) Обязательно что нибудь вспомню, расскажу ;)
Это конечно все очень удобно, когда пишешь, и выглядит красиво код и все вроде бы супер. Но я напереводил подобного немецкого кода очень много. И может вы подскажите, но а как этот выход отследить? Или вход. Потому что когда ты откроешь кросс референс, эти входа и выхода даже не будут помечены как используемые
Видно) Либо нужно сделать Update в Crossreference. Локальные переменные, вы конечно не увидите, впрочем как и в простых FB, FC, но глобальные вещи - ровно так же, как и в тех же "простых" блоках
Видно) Либо нужно сделать Update в Crossreference. Локальные переменные, вы конечно не увидите, впрочем как и в простых FB, FC, но глобальные вещи - ровно так же, как и в тех же "простых" блоках