Страница 160 из 1043 ПерваяПервая ... 60110150158159160161162170210260660 ... ПоследняяПоследняя
Показано с 1,591 по 1,600 из 10426

Тема: ВОПРОС-ОТВЕТ (отвечаем на простые вопросы от новичков)

  1. #1591

    По умолчанию

    Подключите оба модема к ПК, свяжитесь с ними через два гипертерминала и прозвонитесь с одного на другой. Номер телефона в команде ATD нужно записать без точки с запятой - это звонок в режиме передачи данных. С точкой с запятой - это голосовой звонок. Если услуга передачи данных и факсов открыта на ваших симках, то модемы должны соединиться в режиме передачи данных и вы увидите строку Connect 9600 или что-то в этом роде. если услуга не разрешена, соединение не установится. Если все ОК, можете с клавиатуры черкнуть пару строк самому себе и увидеть, как они просквозят эфир и нарисуются на втором гипертерминале.

  2. #1592

    По умолчанию Потеря питания и загрузка.

    Здравствуйте, подскажите пожалуйста:
    Запрограмировал ПЛК100, использовал SFC. Первый шаг программы, устанавливает систему в исходное состояние, и после ресета ПЛК стартует с этого шага. НО рабочий шаг, это 2. И программа после цикла возвращается на этот шаг (т.е. к 1 шагу больше не обращается).
    Если выключаю питание ПЛК, то программа стартует (как я понимаю) с последнего рабочего шага (это 2 шаг), и получатеся что система не устанавливается в исходное состояние.
    Вопрос: каким образом можно сделать так чтобы, при включении после потреи питания, ПЛК стартовал с начала (1 шага) программы, а не с последнего активного?

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

    По умолчанию

    Цитата Сообщение от J0shua Посмотреть сообщение
    Здравствуйте, подскажите пожалуйста:
    Запрограмировал ПЛК100, использовал SFC. Первый шаг программы, устанавливает систему в исходное состояние, и после ресета ПЛК стартует с этого шага. НО рабочий шаг, это 2. И программа после цикла возвращается на этот шаг (т.е. к 1 шагу больше не обращается).
    Если выключаю питание ПЛК, то программа стартует (как я понимаю) с последнего рабочего шага (это 2 шаг), и получатеся что система не устанавливается в исходное состояние.
    Вопрос: каким образом можно сделать так чтобы, при включении после потреи питания, ПЛК стартовал с начала (1 шага) программы, а не с последнего активного?
    По поводу
    Если выключаю питание ПЛК, то программа стартует (как я понимаю) с последнего рабочего шага (это 2 шаг), и получатеся что система не устанавливается в исходное состояние.
    Это результат глупости разработчиков ПЛК! ПЛК продолжает работать на аккумуляторе при обесточенном оборудовании, и если он находился в шаге 2(или любом другом), то там и остается, а не стартует с этого шага.
    В любом случае нужно добавить в конфигурацию модуль Statistic.
    В нем есть бит Power status. Присвоить ему имя, например PWR.
    А дальше в зависимости от того, как сделана программа.
    1. Ваша SFC это главная программа - PLC_PRG.
    В этом случае добавляете ко всем шагам условие перехода "NOT PWR" (он должен быть самым левым) на начальный шаг (Init).
    2. Ваша SFC вызывается из другой программы, например из PLC_PRG.
    В этом случае или по варианту 1 или используйте Флаги SFC
    А) или SFCInit:
    Переменная типа BOOL. Когда переменная получает значение ИСТИНА, программа переходит на шаг Init и все SFC флаги сбрасываются. Шаг Init становится активным, но не выполняется, пока переменная имеет значение ИСТИНА. Как только SFCInit примет значение ЛОЖЬ, выполнение программы продолжится
    Б) или SFCReset:
    Переменная типа BOOL. Работает подобно SFCInit. Но приостановка выполнения происходит после шага инициализации Init. Поэтому флаг SFCReset можно сбросить в самом шаге Init.
    В раздел входных переменных SFC программы нужно добавить объявление
    SFCInit : BOOL;
    или
    SFCReset:BOOL;
    Использование SFCInit
    1.В PLC_PRG по условию "NOT PWR:=TRUE" устанавливаем этот флаг для соотв. программы: prg_sfc.SFCInit := TRUE; Она останавливается и переходит на Init
    2.В PLC_PRG сбрасываем этот флаг по условию "PWR:=TRUE", SFC программа начинают работать сначала.
    В шаге Init нужно предусмотреть соответствующую инициализацию всех важных внутренних переменных, поскольку сброс флагами SFC POU не вызывает нач. инициализацию.
    Использование SFCReset
    1.В PLC_PRG по условию "NOT PWR:=TRUE" устанавливаем этот флаг для соотв. программы: prg_sfc.SFCReset:= TRUE; Она останавливается и переходит на Init
    2.В действии шага Init выполняется последовательность соответствующая инициализацию всех важных внутренних переменных
    3. Последней строчкой выполняем сброс SFCReset:= FALSE;
    Где-то так...
    ЗЫ. Я думаю, что при использовании SFCInit можно сделать проще
    В любом случае в основной программе есть вызов программы SFC в виде prg_sfc(). Меняем на prg_sfc(SFCInit:=NOT PWR)
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  4. #1594

    По умолчанию

    Доброго времени суток! Недавно обратил свое внимание на ПЛК ОВЕН, ранее работал только с SIEMENS. При программировании возник вопрос.

    В Step7 есть такое понятие как ДатаБлок (DB - все знают о чем я )
    Вопрос в следующем - как можно (и можно ли вообще) работать с переменными и таблицами переменных в CODESYS ПЛК110? И как определить область памяти (переменные типа M, если по аналогии с сименом)? Есть ли таблица символов?

  5. #1595
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,243

    По умолчанию

    Цитата Сообщение от AngryGrey Посмотреть сообщение
    Доброго времени суток! Недавно обратил свое внимание на ПЛК ОВЕН, ранее работал только с SIEMENS. При программировании возник вопрос.

    В Step7 есть такое понятие как ДатаБлок (DB - все знают о чем я )
    Вопрос в следующем - как можно (и можно ли вообще) работать с переменными и таблицами переменных в CODESYS ПЛК110? И как определить область памяти (переменные типа M, если по аналогии с сименом)? Есть ли таблица символов?
    Есть, называется все по другому

  6. #1596

    По умолчанию

    А как называется? Что в справке искать то?

  7. #1597
    Пользователь Аватар для drvlas
    Регистрация
    30.09.2010
    Адрес
    Киев
    Сообщений
    700

    По умолчанию

    Цитата Сообщение от petera Посмотреть сообщение
    Где-то так...
    Именно так. использую SFCReset для того, чтобы не ставить в каждом шаге проверки. Но у меня SFC - не главная, поэтому я приспособил этот флаг для "вылавливания" нажатия кнопки СТОП. Работает замечательно - где бы SFC прога ни находилась, по СТОПу срывается в ИНИТ и уж там смотрю: ага, так мы сюда попали не просто так, а по кнопке СТОП - ну и делаю чего надо.
    Так что флаг SFCReset - рулез!

    А вот слежение за питанием сделал (тоже на этом же форуме подсказали) через watchdog. Как только вижу пропадание питания (ну, еще полсекунды ковыряюсь в носу), тупо становлюсь в мертвую петлю, откуда watchdog таймер сорвет в сброс всю программу:

    Код:
    TON_Power( IN:= NOT bPower_OK, PT:=T#0.5s);
    WHILE TON_Power.Q DO ; END_WHILE
    Здесь bPower_OK - именно тот бит в модуле статистики, о котором многоуважаемый коллега petera и говорит.
    Внешне это выглядит именно так, как пользователь имеет право ожидать: как только питание сорвалось, ПЛК летит в сброс. Если включить сразу же питание - мы видим нормальный старт, с инициализациями и прочим, положенным при старте.
    Кому надо - можно сначала (до ухода в метрвую пелтю) выполнить те или иные действия по "безопасной" смерти программы. Ну, ради чего аккум в ПЛК и задумывался.

  8. #1598
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,243

    По умолчанию

    Цитата Сообщение от AngryGrey Посмотреть сообщение
    А как называется? Что в справке искать то?
    а вот это как у Семена, платите и Вам все покажут, все расскажут

  9. #1599

    По умолчанию

    У Семена не платил и тут не охота

  10. #1600
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,243

    По умолчанию

    Цитата Сообщение от AngryGrey Посмотреть сообщение
    У Семена не платил и тут не охота
    Ну значит и с этой средой разберетесь

Страница 160 из 1043 ПерваяПервая ... 60110150158159160161162170210260660 ... ПоследняяПоследняя

Метки этой темы

Ваши права

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