- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Ардуино
-
- здесь недавно
- Сообщения: 2
- Зарегистрирован: 07 дек 2016, 18:33
- Имя: Андрей Анатольевич
- город/регион: нижний новгород
- Благодарил (а): 1 раз
Ардуино
доброе время суток. сразу прошу прощения за вторжение, но на улице зима. я совсем не программист, ту так, чуть-чуть балуюсь.
поэтому прошу помощи. все знают о существовании такой штуки как ардуино.
написал для ардуинки простой пример. при нажатии пин 10 включается пин 12, при следующем нажатии пин 10 включается пин 13. при следующем нажатии пин 10 опять включается пин 12. на ардуине все работает.
не могли бы вы подсказать как тоже самое можно организовать в s7-300. мне это нужно для попеременного включения 2-х вентиляторов что бы исключить обледенение крыльчатки. вентиляторы включаются по датчику температуры.
если кто то сможет помочь буду премного благодарен. лучше всего если это реализовать в lad, остальные языки я ещё только пытаюсь постичь.
заранее спасибо.
поэтому прошу помощи. все знают о существовании такой штуки как ардуино.
написал для ардуинки простой пример. при нажатии пин 10 включается пин 12, при следующем нажатии пин 10 включается пин 13. при следующем нажатии пин 10 опять включается пин 12. на ардуине все работает.
не могли бы вы подсказать как тоже самое можно организовать в s7-300. мне это нужно для попеременного включения 2-х вентиляторов что бы исключить обледенение крыльчатки. вентиляторы включаются по датчику температуры.
если кто то сможет помочь буду премного благодарен. лучше всего если это реализовать в lad, остальные языки я ещё только пытаюсь постичь.
заранее спасибо.
-
- эксперт
- Сообщения: 1172
- Зарегистрирован: 14 ноя 2013, 20:35
- Имя: Анатолий Сергеевич
- Страна: Россия
- город/регион: Башкортостан
- Благодарил (а): 13 раз
- Поблагодарили: 68 раз
Ардуино
Вот примерно как написан ваш код, так и переводите в лад:
Я бы сделал через счётчик нажатий на канал 10, если счётчик равен 1 то сработал выход 12, если 3- то канал 13, если 4 - то сброс и оба канала выключены...
По мне так это проще всего, один счётчик и четыре компаратора, четыре присвоения...
![секрет :ext_secret:](./images/smilies/ext_secret.gif)
-
- почётный участник форума
- Сообщения: 1116
- Зарегистрирован: 09 фев 2011, 11:32
- Имя: Дитрих Евгений Линусович
- город/регион: Донецк
- Благодарил (а): 323 раза
- Поблагодарили: 218 раз
Ардуино
_______________________________________________
Узкая специализация в широком смысле этого слова ведет к широкой идиотизации в узком смысле этого слова . (С) Бернард Шоу
Узкая специализация в широком смысле этого слова ведет к широкой идиотизации в узком смысле этого слова . (С) Бернард Шоу
-
- эксперт
- Сообщения: 1172
- Зарегистрирован: 14 ноя 2013, 20:35
- Имя: Анатолий Сергеевич
- Страна: Россия
- город/регион: Башкортостан
- Благодарил (а): 13 раз
- Поблагодарили: 68 раз
Ардуино
Looker, а как у вас пин12 сработает, если сработал 13 и наоборот как сработает 13 если сработал 12?
Чтение пин 12 и 13надо использовать НО контакт вместо НЗ . Еще дополнительный триггер бы не помешал тут)))
Чтение пин 12 и 13надо использовать НО контакт вместо НЗ . Еще дополнительный триггер бы не помешал тут)))
Последний раз редактировалось megavolt86 08 дек 2016, 05:57, всего редактировалось 2 раза.
![секрет :ext_secret:](./images/smilies/ext_secret.gif)
-
- почётный участник форума
- Сообщения: 1116
- Зарегистрирован: 09 фев 2011, 11:32
- Имя: Дитрих Евгений Линусович
- город/регион: Донецк
- Благодарил (а): 323 раза
- Поблагодарили: 218 раз
Ардуино
Зачем? Достаточно помнить, что в прошлый раз был включен или выключен 12-й.
Это не релейная схема с параллельным выполнением, в релейной схеме были-бы "гонки". Нижняя строка выполняется после верхней.
Показать по шагам, что все работает? Зеленые вертикальные полосы показывают, что режим Online и RUN.
Позже сделаю тренд всех переменных для доказательства.
_______________________________________________
Узкая специализация в широком смысле этого слова ведет к широкой идиотизации в узком смысле этого слова . (С) Бернард Шоу
Узкая специализация в широком смысле этого слова ведет к широкой идиотизации в узком смысле этого слова . (С) Бернард Шоу
-
- почётный участник форума
- Сообщения: 5639
- Зарегистрирован: 07 окт 2011, 09:12
- Имя: Гаско Вячеслав Эриевич
- Страна: Россия
- город/регион: Рязань
- Благодарил (а): 602 раза
- Поблагодарили: 760 раз
Ардуино
Тут задача поставлена нечетко. Отсюда и разночтения.
На какое время должны сохранять своё включенном состояние выходы? На время действия входного сигнала, или...?
На какое время должны сохранять своё включенном состояние выходы? На время действия входного сигнала, или...?
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
-
- частый гость
- Сообщения: 404
- Зарегистрирован: 25 фев 2016, 12:18
- Имя: Жидков Игорь Алексеевич
- Страна: РФ
- город/регион: Королев/Фрязино
- Благодарил (а): 4 раза
- Поблагодарили: 12 раз
Ардуино
На ST делай, "с" подобный аналог, правда твой с-код далек от совершенства
Код: Выделить всё
имхо:
псевдокод
bool sw=0;
bool m=0;
bool di;
bool do1=0;
bool do2=0;
main()
for(;;){
if(m==0&&di==1)
sw=!sw;
m=di;
do1=sw&&di;
do2=(!sw)&&di;
}
Последний раз редактировалось izhidkov 08 дек 2016, 13:34, всего редактировалось 1 раз.
Компилятор - лучший друг человека!
-
- почётный участник форума
- Сообщения: 1116
- Зарегистрирован: 09 фев 2011, 11:32
- Имя: Дитрих Евгений Линусович
- город/регион: Донецк
- Благодарил (а): 323 раза
- Поблагодарили: 218 раз
Ардуино
_______________________________________________
Узкая специализация в широком смысле этого слова ведет к широкой идиотизации в узком смысле этого слова . (С) Бернард Шоу
Узкая специализация в широком смысле этого слова ведет к широкой идиотизации в узком смысле этого слова . (С) Бернард Шоу
-
- почётный участник форума
- Сообщения: 5639
- Зарегистрирован: 07 окт 2011, 09:12
- Имя: Гаско Вячеслав Эриевич
- Страна: Россия
- город/регион: Рязань
- Благодарил (а): 602 раза
- Поблагодарили: 760 раз
Ардуино
Да, код-то я и не смотрел...
Тогда всё так.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)