IPB

Здравствуйте, гость ( Вход | Регистрация )

> Arduino
Поделиться
kostyalamer
сообщение 11.4.2014, 20:00
Сообщение #1


Профессионал
*******

Группа: Пользователь
Сообщений: 4384
Регистрация: 17.9.2009
Вставить ник
Цитата
Пользователь №: 1617
Страна: Россия
Город: Санкт-Петербург
Пол: Муж.



Репутация: 20


Наконец-то собрался и купил Arduino Uno и к нему разных шилдов smile.gif
Теперь можно всласть напаяться и напрограммироваться ( естественно под ALT Linux )
Кому интересно пишем в эту тему.
Несколько полезных ссылок :
Для начала :
http://arduino.ru./
http://f1p.ucoz.ru/publ/9-1-0-34
Простой примерчик : http://www.freeduino.ru/arduino/sample_PhysicalPixel.html - проверил , работает при помощи встроенного в программу arduino монитора порта:
Прикрепленный файл  ___________________.png ( 83.21 килобайт ) Кол-во скачиваний: 6

Паяльник как всегда рулит : http://cxem.net/arduino/arduino.php

PS Все это безобразие напоминает мне старые добрые времена good.gif , в общем Spectrum - forever !

Сообщение отредактировал kostyalamer - 11.4.2014, 20:15
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Открыть новую тему
Ответов
kostyalamer
сообщение 17.5.2014, 16:56
Сообщение #2


Профессионал
*******

Группа: Пользователь
Сообщений: 4384
Регистрация: 17.9.2009
Вставить ник
Цитата
Пользователь №: 1617
Страна: Россия
Город: Санкт-Петербург
Пол: Муж.



Репутация: 20


Продолжаю тему про Arduino, теперь устройство немного посложнее - регулятор температуры / влажности , кроме Arduino Uno были использованы :
релюхи - http://fixled.ru/shields/4relay-shield.html
экранчик - http://fixled.ru/microcontrollers/modules/serial-lcd.html
датчик - http://fixled.ru/sensors/dht22.html
потенциометры для задания температуры и влажности свои из старого хлама.
ссылки привел специально, там можно скачать соответствующие этим устройствам библиотеки
Код :
Код
// регулятор температуры и влажности

#include "DHT.h"
#include <Wire.h>
#include "rgb_lcd.h"

int ledT = 13;         // выход регулятора температуры
int ledH = 12;         // выход регулятора влажности
int sensorPinT = A1;   // вход установки температуры
int sensorPinH = A0;   // вход установки влажности
int sensorValueT = 0;  // показания датчика температуры
int sensorValueH = 0;  // показания датчика влажности
int scaleT = 10;       // масштабатор уставки температуры
int scaleH = 10;       // масштабатор уставки влажности
int deltaT = 2;        // дельта между включением и выключением регулятора по T
int deltaH = 2;        // дельта между включением и выключением регулятора по H
rgb_lcd lcd;

const int colorR = 0;  // цвета подсветки дисплея
const int colorG = 0;
const int colorB = 150;
unsigned int RelayPin[]={4,6,5,7};

#define DHTPIN 2     // what pin we're connected to

// Uncomment whatever type you're using!
//#define DHTTYPE DHT11   // DHT 11
#define DHTTYPE DHT22   // DHT 22  (AM2302)
//#define DHTTYPE DHT21   // DHT 21 (AM2301)

// Connect pin 1 (on the left) of the sensor to +5V
// Connect pin 2 of the sensor to whatever your DHTPIN is ( pin 2)
// Connect pin 4 (on the right) of the sensor to GROUND
// Connect a 10K resistor from pin 2 (data) to pin 1 (power) of the sensor

DHT dht(DHTPIN, DHTTYPE);

void setup() {
    int i=0;
    for(i=0;i<4;i++)
        pinMode(RelayPin[i],OUTPUT); // релейные входы 1-4
    pinMode(ledT, OUTPUT); // выход регулятора температуры
    pinMode(ledH, OUTPUT); // выход регулятора влажности    
    lcd.begin(16, 2);
    
    lcd.setRGB(colorR, colorG, colorB);
    lcd.print("Regulator!");

    delay(1000);

  dht.begin();
}

void loop() {
  // Reading temperature or humidity takes about 250 milliseconds!
  // Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
  float h = dht.readHumidity();
  float t = dht.readTemperature();
  sensorValueT = analogRead(sensorPinT)/scaleT;
  if ( sensorValueT > 100 ) sensorValueT = 100; // макс. значение уставки T
  sensorValueH = analogRead(sensorPinH)/scaleH;  
  if ( sensorValueH > 100 ) sensorValueH = 100; // макс. значение уставки F
  // проверка на ошибочные значения модуля DHT
  if (isnan(t) || isnan(h)) {
    lcd.print("Failed to DHT");
  } else {
    // блок отображения информации
    // температура
    lcd.setCursor(0, 0);
    lcd.print("T: ");
    lcd.setCursor(3, 0);
    lcd.print("    ");
    lcd.setCursor(3, 0);
    lcd.print(t);
    lcd.print(" C");
    lcd.setCursor(11, 0);
    lcd.print("    ");
    lcd.setCursor(11, 0);
    lcd.print(sensorValueT);
    // влажность
    lcd.setCursor(0, 1);
    lcd.print("H: ");
    lcd.setCursor(3, 1);
    lcd.print("    ");
    lcd.setCursor(3, 1);
    lcd.print(h);
    lcd.print(" %");
    lcd.setCursor(11, 1);
    lcd.print("    ");
    lcd.setCursor(11, 1);
    lcd.print(sensorValueH);
    // блок регуляторов температуры и влажности
    if ( t  < sensorValueT - deltaT/2)
       { digitalWrite( ledT, HIGH );
         digitalWrite(RelayPin[1],HIGH);
       }
    else if ( t  > sensorValueT + deltaT/2)
       { digitalWrite( ledT, LOW );
         digitalWrite(RelayPin[1],LOW);
       }
    if ( h  < sensorValueH - deltaH/2)
       { digitalWrite( ledH, HIGH );
         digitalWrite(RelayPin[2],HIGH);
       }
    else if ( h  > sensorValueH + deltaH/2)
       { digitalWrite( ledH, LOW );
         digitalWrite(RelayPin[2],LOW);
       }
    delay (200);  
  }
}

А вот как вся эта радость выглядит, слева на экране фактическая температура и влажность, справа заданная потенциометрами,
релюшки как и положено щелкают smile.gif Поскольку устройство собрано на поиграться то и исполнение соответствующее:
Прикрепленный файл  98.jpeg ( 212.68 килобайт ) Кол-во скачиваний: 9
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

Сообщений в этой теме
- kostyalamer   Arduino   11.4.2014, 20:00
- - IVK   Это интересно И что он у тебя будет делать?   12.4.2014, 9:09
|- - kostyalamer   Цитата(IVK @ 12.4.2014, 9:09) Это интерес...   12.4.2014, 12:26
|- - and   У меня тоже есть Nano и UNO. А язык там вроде како...   12.4.2014, 18:38
|- - kostyalamer   Цитата(and @ 12.4.2014, 18:38) У меня тож...   12.4.2014, 19:09
|- - and   Насчет названия языка не знаю, серьезно не изучал ...   12.4.2014, 21:42
- - kostyalamer   Вот и простейшая программка, для начала схемка ( к...   19.4.2014, 16:13
- - IVK   Отделил отсюда тему "Юные программисты в Арха...   20.4.2014, 8:46
- - kostyalamer   Продолжаю тему про Arduino, теперь устройство немн...   17.5.2014, 16:56
- - IVK   Цитата(kostyalamer @ 19.5.2014, 22:27) 1 ...   20.5.2014, 15:56
- - kostyalamer   Вот еще очень интересная штука : http://www.polesi...   21.5.2014, 7:43
- - YYY   Купил набор http://ru.aliexpress.com/item/Pro-Mini...   21.5.2014, 20:08
- - kostyalamer   Небольшой отчет о проделанной работе : Синтезатор...   12.6.2014, 23:13
|- - YYY   Цитата(kostyalamer @ 12.6.2014, 23:13) мо...   13.6.2014, 9:17
|- - kostyalamer   Цитата(YYY @ 13.6.2014, 9:17) Прикольно...   13.6.2014, 9:51
- - YYY   спасибо !   13.6.2014, 11:28
- - YYY   Получил вторую часть. В системе usb 2-2: pl2303 co...   15.6.2014, 8:44
|- - kostyalamer   Цитата(YYY @ 15.6.2014, 8:44) Получил вто...   15.6.2014, 18:19
- - IVK   Цитата(kostyalamer @ 15.6.2014, 18:19) В ...   15.6.2014, 18:35
|- - kostyalamer   Цитата(IVK @ 15.6.2014, 18:35) Вот-вот, м...   15.6.2014, 20:00
- - IVK   Но я же вообще на популяризацию ориентирован - и в...   15.6.2014, 20:38
- - YYY   http://s4a.cat/ конечно хорошо... Я за... но для о...   16.6.2014, 10:46
|- - kostyalamer   Цитата(YYY @ 16.6.2014, 10:46) http://s4a...   16.6.2014, 21:42
- - kostyalamer   Ну вот продолжение банкета Синтезатор, кроме то...   25.6.2014, 21:27
- - kostyalamer   Что-то тема как обычно потухла, подброшу дровишек ...   31.1.2015, 19:20
- - kostyalamer   Очередное продолжение банкета, система визуального...   28.11.2015, 12:25
- - kostyalamer   Давно сюда ничего не писал , внесу небольшой вкла...   18.8.2016, 22:01
- - kostyalamer   Из остатков от старого стола и arduino сделал себе...   11.3.2017, 20:27
- - kostyalamer   Написал небольшую статейку по ардуине : http://we....   28.9.2017, 23:27
- - Смит   Цитата(kostyalamer @ 28.9.2017, 22:27) На...   10.10.2017, 15:41
- - kostyalamer   Спасибо , исправил - вот работающая ссылка : http:...   10.10.2017, 21:06
- - YYY   Сегодня (через три с половиной года после получени...   8.2.2018, 1:26
- - Смит   Цитата(kostyalamer @ 11.3.2017, 19:27) Из...   8.2.2018, 15:28
- - kostyalamer   Успехи средние . Заработало в принципе нормально, ...   8.2.2018, 23:16
|- - YYY   Цитата(kostyalamer @ 8.2.2018, 23:16) To ...   10.2.2018, 13:44
|- - kostyalamer   Цитата(YYY @ 10.2.2018, 13:44) У меня уже...   10.2.2018, 23:51
|- - YYY   Цитата(kostyalamer @ 10.2.2018, 23:51) Кс...   11.2.2018, 1:16
- - knn   [не знаю куда правильней разместить..] Попалось (п...   12.8.2020, 19:24


Ответить в эту темуОткрыть новую тему
( Гостей: 1 )
Пользователей: 0

 



RSS Текстовая версия Сейчас: 16.6.2025, 14:27