Схемотехника с Arduino (индивидуальная самостоятельная работа)



Этап 1. "Autodesk Circuits - собираем устройства онлайн":

- регистрация на сервисе, изучение его интерфейса;
- изучение информации по ссылке.



Этап 2. Мини-проект "Радуга"

- изучение информации по ссылке;
- собрать схему с RGB-светодиодом и запрограммировать переключение семи цветов радуги в его работе;
добавить на схему еще один RGB-светодиод и запрограммировать работу всех светодиодов таким образом, чтобы они работали одновременно, но смена цветов шла с разницей в два цвета.




Cсылка на проект

Этап 3. Мини-проект "НЕ Умный светильник"
- изучение информации по ссылке;
- собрать схему "НЕ Умный светильник" по предложенной инструкции в теоретическом материале; изменить код программы таким образом, чтобы при ярком свете светодиод горел ровно, при среднем освещении - мигал, в темноте - не горел.





Ссылка на проект
Этап 4. "Разработка мини-проекта для учеников"
- изучение информации по ссылке;
- придумать мини-проект для учащихся и оформить его по следующей схеме:
Теоретический материал
Скринкаст по сборке первоначальной схемы
Подготовка задания практического характера (добавление новых элементов на схему и программирование их работы или доработка программы).

Схема "Кнопочный переключатель"
Работа данной схемы заключается в том, что светодиод, при нажатии кнопки, будет добавлять яркость, убавлять яркость выключаться и так по кругу.

Готовая схема выглядит следующим образом:


При помощи следующего видео вы сможете cамостоятельно разобраться и составить такую схему.





Для работы нашей схемы потребуется следующий скетч:
#define BUTTON_PIN  3
#define LED_PIN     13
 
boolean buttonWasUp = true;  // была ли кнопка отпущена?
boolean ledEnabled = false;  // включен ли свет?
 
void setup()
{
  pinMode(LED_PIN, OUTPUT);
  pinMode(BUTTON_PIN, INPUT_PULLUP);
}
 
void loop()
{
  // определить момент «клика» несколько сложнее, чем факт того,
  // что кнопка сейчас просто нажата. Для определения клика мы
  // сначала понимаем, отпущена ли кнопка прямо сейчас...
  boolean buttonIsUp = digitalRead(BUTTON_PIN);
 
  // ...если «кнопка была отпущена и (&&) не отпущена сейчас»...
  if (buttonWasUp && !buttonIsUp) {
    // ...может это «клик», а может и ложный сигнал (дребезг),
    // возникающий в момент замыкания/размыкания пластин кнопки,
    // поэтому даём кнопке полностью «успокоиться»...
    delay(10);
    // ...и считываем сигнал снова
    buttonIsUp = digitalRead(BUTTON_PIN);
    if (!buttonIsUp) {  // если она всё ещё нажата...
      // ...это клик! Переворачиваем сигнал светодиода
      ledEnabled = !ledEnabled;
      digitalWrite(LED_PIN, ledEnabled);
    }
  }
 
  // запоминаем последнее состояние кнопки для новой итерации
  buttonWasUp = buttonIsUp;
}
Задание для самостоятельной работы:
Попробуйте добавить еще одну кнопку в схему так, чтобы одна кнопка включала диод, а вторая 
выключала. Подумайте, какие для этого потребуются элементы и что изменить в коде.

Комментарии

Популярные сообщения из этого блога

Методические подходы к изучению вопросов представления информации в курсе информатики основной школы

Индивидуальная самостоятельная работа №6. Методы обучения информатике