Голодный Робот из банки от Pringles и Arduino


Забавного Голодного Робота, поедающего монетки, можно сделать из цилиндрической банки от чипсов Pringles, контроллера Arduino, сервомашинки и ИК-датчика.

Код для Arduino

// https://youtu.be/KfP_LfUiwdc

// Select Arduino nano / ATmega328P (Old Bootloader)

#include <Servo.h>

Servo armServo;

void setup() {
  armServo.attach(12);
  armServo.write(90);

  pinMode(A7, INPUT)  ;
  pinMode(13, OUTPUT);
  pinMode(0, OUTPUT);
  pinMode(1, OUTPUT);
}

int sensorValue = 0;
int prevSensorValue = 0;
const int THRESHOLD = 360;
void loop() {

  sensorValue = analogRead(A7);
  if (prevSensorValue <= THRESHOLD) {
    if (sensorValue > THRESHOLD) {
      action();
    }
  }

  prevSensorValue = sensorValue;
  delay(10);
}

void action() {
  led(true);

  //eating
  delay(1000);
  armServo.attach(12);
  armServo.write(10);
  delay(300);
  armServo.write(70);
  delay(500);

  //after ate
  delay(100);
  armServo.write(50);
  delay(250);
  armServo.write(70);
  delay(250);
  armServo.write(50);
  delay(250);
  armServo.write(70);
  delay(250);
  armServo.write(50);
  delay(250);
  armServo.write(70);
  delay(250);
  armServo.write(50);
  delay(250);
  armServo.write(90);
  delay(250);

  //release arm's torque
  armServo.detach();
  led(false);
}

void led(bool onOff) {
  if (onOff) {
    digitalWrite(13, HIGH);
    digitalWrite(0, LOW);
    digitalWrite(1, LOW);
  } else {
    digitalWrite(13, LOW);
    digitalWrite(0, HIGH);
    digitalWrite(1, HIGH);
  }
}

Ссылки
PAPER HUNGRY ROBOT — Pringles Recycle Arduino Robot
https://github.com/happythingsmaker/TrashEatingRobot

По теме
Забавный робот-попрошайка в стиле стимпанк
Робот для сбора пожертвований
Робот из бумаги на базе Arduino
Датчик измерения расстояния SHARP-GP2Y0A02YK0F

Arduino
Ардуино что это и зачем?
Arduino, термины, начало работы
КМБ для начинающих ардуинщиков
Состав стартера (точка входа для начинающих ардуинщиков)


Добавить комментарий

Arduino

Что такое Arduino?
Зачем мне Arduino?
Начало работы с Arduino
Для начинающих ардуинщиков
Радиодетали (точка входа для начинающих ардуинщиков)
Первые шаги с Arduino

Разделы

  1. Преимуществ нет, за исключением читабельности: тип bool обычно имеет размер 1 байт, как и uint8_t. Думаю, компилятор в обоих случаях…

  2. Добрый день! Я недавно начал изучать программирование под STM32 и ваши уроки просто бесценны! Хотел узнать зачем использовать переменную типа…

3D-печать AI Android Arduino Bluetooth CraftDuino DIY IDE iRobot Kinect LEGO OpenCV Open Source Python Raspberry Pi RoboCraft ROS swarm ИК автоматизация андроид балансировать бионика версия видео военный датчик дрон интерфейс камера кибервесна манипулятор машинное обучение наше нейронная сеть подводный пылесос работа распознавание робот робототехника светодиод сервомашинка собака управление ходить шаг за шагом шаговый двигатель шилд юмор

OpenCV
Робототехника
Будущее за бионическими роботами?
Нейронная сеть - введение