Practical Arduino Cool Projects for Open Source Hardware

Salut si eu comunitatea arduino din Giurgiu si doresc sa atasez o carte gasita in preumblari .

Cool Projects for Open Source Hardware

Numai bine!

În categoria Documentatie | Comentariile sunt închise pentru Practical Arduino Cool Projects for Open Source Hardware

Citirea datelor transmise de o sonda meteo .

Salutare , zilele acestea o sa intru in posesia unei radiosonde meteo modelul, Vaisala Radiosonde RS80-15GH Digital GPS WeatherStation, ce are urmatoarele caracteristici:

Description……. Weather Radiosonde

Make…………. Vaisala

Type/Model…… RS80-15GH

Voltage……….. Battery

Orogin………… Met Office

Condition……… NEW in sealed bag

Met Office Weather Radiosonde, with 8 channel digital GPS receiver, 403 Mhz Telemetry Transmitter, Barometric, Himidity & Temperature sensors, water activated battery.

Click here for spesifications… http://www.hobeco.net/pdf/RS80_GPS.pdf

View of 403 MHz Telemetry Transmitter with water activated battery.

View of  Humicap, Temperature, and barometric pressure sensors.

View of 8 Channel Digital GPS Receiver.


Intrebarea este : a mai folosit cineva asa ceva , stie cineva protocolul de transmitere al datelor , fiindca vreau sa le colectez cu un arduino si sa le afisez pe un 40X4 (hd44780)

În categoria Articole | Etichete , | Comentariile sunt închise pentru Citirea datelor transmise de o sonda meteo .

Basic IR proximity sensor

Basic IR proximity sensor
The photo depicts the schematics for an infrared sensor which allows you to detect an object’s distance from the robot.

Am mai gasit 2 scheme

Varianta cu rezistenta de 47k pentru citirea prin portul analogic si varianta cu condensator pentru citirea prin porturile digitale .

Documentatie mai multa gasiti aici.

Vio ce parere aveti ?

În categoria Articole | Etichete , | Comentariile sunt închise pentru Basic IR proximity sensor

Intalnirile Tehnorama Giurgiu

Am placerea sa va invit la prima editie a intalnirilor Tehnorama din orasul Giurgiu , joi, 16  decembrie 2010, incepand cu ora 19:00 .

Intalnirea are loc in sala de prezentare a complexului Hanul Cosminului

Intrarea este libera , nu exista consumatie obligatorie .

Incercam ca “evenimentul” sa fie transmis live la o adresa pe care o sa o comunicam  joi.

În categoria Articole | Un comentariu

Arduino meets Processing via Wifi (DD-WRT)

Mai atasez un proiect preluat de pe www.geocities.jp . Eu am folosit o parte din acest proiect pentru a adauga intr-un mysql temperaturile preluate cuarduino cu ajutorul unor senzori digitali ds1820.

Pentru cei care vor sa faca rost de ds1820s la preturi aproape de O sa imi postele comentariu.

1. Demo Video

2.Concept Diagram

FON2100 internal serial pin-header

FON2200 internal serial pin-header

3.Schematics

4.Photo

5.Source Code

Server Side (Processing)

/*************************************/
/* Arduino meets Processing via Wifi */
/*   Processing Sever side sketch    */
/*************************************/

import processing.net.*;

int port = 5555; //Sever TCP-Port number
int x = 200;
int y = 200;
int z = 0;

Server server;
String strdata = "0";

void setup(){
  size(400,400,P3D);
  server = new Server(this, port);
  noStroke();
  colorMode(RGB, 1);
}

void draw(){
  Client client = server.available(); //
  /* Draw ColorCube */
  background(0);
  pushMatrix();
  translate(x,y,z);
  rotateX(PI/4);
  float r = float(strdata);
  rotateZ(PI*r/512.0-0.75);
  colorcube(80);
  popMatrix();
  /* Communication with client */
  if(client != null){      // if client is  connecting
      client.write("\n");
      if((strdata=client.readString()) != null){
          strdata=trim(strdata);
//        println(strdata);
      }
  }
  delay(10);
}

/* When a client is connected */
void serverEvent(Server s, Client c){
  println("Client connect - IP:"+c.ip()); // show IP
}

/* Draw ColorCube function */
void colorcube(int s){
   scale(s);
   beginShape(QUADS);

  fill(0, 1, 1); vertex(-1,  1,  1);
  fill(1, 1, 1); vertex( 1,  1,  1);
  fill(1, 0, 1); vertex( 1, -1,  1);
  fill(0, 0, 1); vertex(-1, -1,  1);

  fill(1, 1, 1); vertex( 1,  1,  1);
  fill(1, 1, 0); vertex( 1,  1, -1);
  fill(1, 0, 0); vertex( 1, -1, -1);
  fill(1, 0, 1); vertex( 1, -1,  1);

  fill(1, 1, 0); vertex( 1,  1, -1);
  fill(0, 1, 0); vertex(-1,  1, -1);
  fill(0, 0, 0); vertex(-1, -1, -1);
  fill(1, 0, 0); vertex( 1, -1, -1);

  fill(0, 1, 0); vertex(-1,  1, -1);
  fill(0, 1, 1); vertex(-1,  1,  1);
  fill(0, 0, 1); vertex(-1, -1,  1);
  fill(0, 0, 0); vertex(-1, -1, -1);

  fill(0, 1, 0); vertex(-1,  1, -1);
  fill(1, 1, 0); vertex( 1,  1, -1);
  fill(1, 1, 1); vertex( 1,  1,  1);
  fill(0, 1, 1); vertex(-1,  1,  1);

  fill(0, 0, 0); vertex(-1, -1, -1);
  fill(1, 0, 0); vertex( 1, -1, -1);
  fill(1, 0, 1); vertex( 1, -1,  1);
  fill(0, 0, 1); vertex(-1, -1,  1);

  endShape();
}
/* End of Sever side sketch */

/* Copyright by Kimio Kosaka 2008.08.20 */

Client Side (Arduino-0011)

/*************************************/
/* Arduino meets Processing via Wifi */
/*    Arduino Client side sketch     */
/*************************************/

/* Switch and LED settings */
#define start_sw 4
#define led 3

/* DD-WRT user-ID,password,serial-speed settings */
#define USER_ID "root"
#define PASSWD "admin"
#define SERIAL_SPEED 115200

/* Processing-Server IP and TCP-Port settings */
#define SERVER "192.168.10.129"
#define PORT "5555"

void setup()  {
  pinMode(led, OUTPUT);
  pinMode(start_sw,INPUT);
  Serial.begin(SERIAL_SPEED);
  /* waiting until start_sw was pushed */
  while(digitalRead(start_sw)==HIGH){
    digitalWrite(led,HIGH);
    delay(100);
    digitalWrite(led,LOW);
    delay(100);
  }
  while(digitalRead(start_sw)==LOW);
  /* login and connect */
  login();    //login DD-WRT
  connect();  //connect Processing-Server
  digitalWrite(led,HIGH);
}

void loop()
{
  int x = analogRead(0); // read voltage of potentiometer
  if(Serial.available()>0){
    Serial.read(); // read out data from Processing-Server
    Serial.println(x,DEC); //send data to Processing-Server
  }
  /* if start_sw is pushed */
  if(digitalRead(start_sw)==LOW){
      disconnect();  //disconnect from Processing-Server
      logoff();  // logoff from DD-WRT
      /* LED blink eternally */
      while(true){
         digitalWrite(led,LOW);
         delay(1000);
         digitalWrite(led,HIGH);
         delay(1000);
      }
  }
}

/* login to DD-WRT */
void login()
{
  Serial.print("\n");
  allflush(); // flushing serial read buffer
  Serial.println(USER_ID);
  delay(500);
  Serial.println(PASSWD);
  allflush();
}  

/* logoff from DD-WRT */
void logoff()
{
  Serial.print("\x03"); //CTRL+C
  delay(100);
  Serial.println("exit");
  allflush();
}

/* connect to Processing-Server */
void connect()
{
  Serial.print("\x03\n\n"); //CRTL+C,LF,LF
  allflush();
  /* telnet to Processing-Server */
  Serial.print("telnet ");
  Serial.print(SERVER);
  Serial.print(" ");
  Serial.println(PORT);
  allflush();
  /* telnet change "character mode".  cf: DD-WRT telnet command */
  Serial.print("\x03"); //CTRL+C
  Serial.print("c");
  allflush();
  Serial.print("\n");
  allflush();
  /* send first data to Processing-Server. first data is 0 */
  Serial.println("0");  //send 0
} 

/* disconnect form Processing-Server */
void disconnect()
{
  digitalWrite(led,HIGH);
  /* exit telnet.  cf:DD-WRT telnet command */
  Serial.print("\x1d");//CTRL+]
  delay(100);
  Serial.print("e");
  delay(100);
  allflush();
}

/* flushing serial read buffer */
void allflush()
{
  delay(100);
  while(Serial.available()>0) Serial.flush();
}

/* End of Client side sketch */

/* Copyright by Kimio Kosaka 2008.08.20 */
    The Arduino sketchIt’s sending characters over serial to a command line on the Fonera router.
    1. It’s doing is responding to „Username” and „Password” prompts with „root” and „admin”, so it’s logging in to the fonera as the root user.
    2. It’s running the „telnet” command to connect to the PC running a server written in Processing via wifi.
    3. It’s sending the value from an analogRead of a pin with potentiometer constantly.
    • It receives those values, and rotates the colour cube on the screen by those.
  1. The Arduino sketch It’s sending characters over serial to a command line on the Fonera router. The Processing sketch

6  Now I’m making and testing „Foneraduino” (Fonera + Arduino clone).

    În categoria Articole | Etichete , , | Un comentariu

    Conectarea unui lcd HD44780 prin 2 sau 3 fire

    Am gasit pe un site o modalitate simpla de conectare a unu lcd din gama 44780 prin 2 sau 3 fire la arduino , cu ajutorul unui 74*LS*164 (app 3 ron) . Mai jos o sa pun materialul brut.

    Introduction

    This is a library for using an Arduino with only 2 or 3 wires to HD44780-compatible LCD’s, via shiftregisters.

    Usage

    #include <ShiftRegLCD.h>

    ShiftRegLCD objectName(Datapin, Clockpin, Enablepin or TWO_WIRE [, Lines [, Font]])

    where Lines and Font are optional.

    • Enablepin: can be replaced by constant TWO_WIRE, if using only 2 wires.
    • Lines: 1 or 2 lines (also 4-line LCD’s must be set as 2).
    • Font : 0 or 1, small or big font (8 or 10 pixel tall font, if available).

    More details on the Usage page.

    The compulsory „Hello world” example using a two-wire connection:

    Mundane details

    Since I had an old HD44780 LCD display, I wanted to connect it to the Arduino, and still have som extra IO pins to use for other things than the LCD 🙂 I hope this might be useful for others too.

    Generating the 8 allowable custom characters are also supported. Examples of usage are included.

    As of now this library seem to be very reliable regarding starting/initializing the display (as opposed to the first version, at least on my LCD).

    I’m pretty new to the Arduino, but I have dabbled a little in both electronics and C++ before. But not much, this is the first class or library I’ve written for C++. Or very C++ like language.

    Additional, somewhat technical dull details

    As of 2009.07.27 there is a change to 2-wire connection, and also a new schematics, since the enable of the enable-puls needed to be at the last bit position. Also, a big thanks go to mircho from the arduino playground forum for pointing out a way of using only two wires! He found it at ScienceProg.com. There should still be the option of using 3 wires as before, if needed (see second schematics).

    Some have reported problems in two-wire mode when using an 74*HC*164, probably due to the HC not coping with the quick’n’dirty resistor-diode AND gate. It works nice in three-wire mode when I tested it. For two-wire mode I’d recommend using an 74*LS*164.

    This is basically a mix between the „Official” LiquidCrystal library and the improved version from LadyAda. Thanks must go to her for all those functions included, and not least a proper initialization routine (though I changed it slightly, I believe, closer to specs)! This library is only tweaked to work with a shift register and the shiftOut() function. I used 74LS164, since that’s what I had. That’s not a fancy shiftregister (no tristate nor latching, not bidirectional etc.).

    There are two ways of using this library and connecting to a „shiftregistered” LCD, with 2 or 3-wires:

    • In 2-wire mode, the Enable-pin is not used. The Data-pin is used as Enable, together with the AND’ing from shiftregister bit #7 (the diode and resistor in the schematics form a simple AND gate). This method requires an extra write to the shiftregister with zeros to clear it between each write of the nibble (4 bits) to the LCD. This avoids accidental Enable-signals. IE 4 shiftregister writes total to transfer 1 byte to the LCD. Thus using only 2 pins from the Arduino.
    • In 3-wire mode, The Enable-pin goes directly from the Arduino to the LCD. Thus using three pins from the Arduino. No clearing of the shiftregister between writes is neccesary, but since the LCD still operates in 4-bit mode, only a nibble is transferred at a time. IE 2 writes to the shiftregister for 1 byte to the LCD.

    The time difference is not significant, although 3-wire method is slightly faster. (The clearing of the shiftregisters in 2-wire mode does not need the delays the LCD needs).

    In both cases, the two other pins (data and clock) to the shiftregisters respective inputs. Basically any shiftregister should do. It’s very simple, really.

    It’s a bit primitive as there is no reading of the busy flag from the LCD. I was playing with the idea of implementing that while still using the same connections from the Arduino. Now I’m not so sure if I’ll ever implement that.

    It seems some have 4-line LCD-displays with (I think) common data pins (D0 – D7), and two enable-pins. There should be no problem making two instances of 3-wire ShiftRegLCD objects with the same data and clock-pins, but with different enable pins, thus using 4 pins on the Arduino for a 4-line LCD.

    License

    Original version is licensed under Creative Commons Attribution-ShareAlike 3.0 License. I couldn’t find that one here (except for other contents than code), so I hope GNU GPL v3 is not too far off from that one.

    Schematics

    New schematics as of 2009.07.28!

    The power connection for the 74LS164 is not shown.

    For those using 3 wires, this schematics should work with the same library (Not tested this exact version, but a very similar one).

    Sursa:http://code.google.com/p/arduinoshiftreglcd/

    În categoria Articole | Etichete , , , , , , , | Comentariile sunt închise pentru Conectarea unui lcd HD44780 prin 2 sau 3 fire

    Tipuri de shieldere si module

    Arduino Sensor Shield V4

    Arduino white LED Module

    Arduino Push Button module

    Arduino magnetic reed switch module

    Arduino Push Button module

    Analog Temperature Sensor Module

    Arduino light sensor module

    Arduino Digital Vibration Sensor

    Arduino Slotted Infrared Switch

    Arduino DIY Switch module

    Arduino white LED Module

    Arduino Buzzer Module

    Prototype Shield v.5

    Arduino Potentiometer module

    Arduino Slide Potentiometer linear

    Arduino Wii Nunchuck adapter

    Arduino Prototype Shield

    Arduino compatible Shield with LCD

    Arduino ShiftOut Module

    Arduino Sound Sensor Module

    Infrared proximity switch module

    Arduino PIR Body Movement Sensor

    Arduino 3 dimensions Joystick module

    ARDUINO DS1307 I2C RTC Shield

    Arduino Shield XBee RF module

    Arduino Relay Shield Digital Module

    Arduino RF remote control Shield

    Arduino Wrobot Step Motor Shield

    Arduino SPI SD card Module

    Arduino Touch sensor module

    LCD Keypad Shield pentru Arduino

    Arduino Motor controller Shield

    Arduino Touch sensor

    Arduino EEPROM module 512K

    Ethernet Shield pentru Arduino

    Arduino Serial LCD display

    Arduino Compatible Power Shield

    Arduino Robot Ultrasonic Ranging Shield

    ARDUINO DS1307 RTC Relay Sensor Shield

    TFT 2.4″ 320*240 With Touch Shield

    Arduino Classical Bluetooth

    Arduino UNO ATmega328 ATmega8U2 Board + Joystick Shield

    Graphic LCD Shield

    LinkSprite WiFi Shield for Arduino

    Quad-band GPRS/GSM Shield for Arduino

    Arduino Ultrasonic module

    Humirel Humidity Sensor HS1101

    Arduino Line Tracking Sensor

    Arduino Temperature Sensor DS18B20

    Arduino MQ2 Gas Sensor

    Arduino Infrared Obstacle-Avoidi​ng Sensor

    Arduino Humidity&Temper​ature Sensor Module-HS1101

    Arduino Electromagnetic Wave Detection Sensor

    Arduino MMA7260 Triaxial Acceleration Higher Sensor

    MQ-4 MQ4 natural gas + CH4 detector sensor for Arduino

    Dupa cum ati observat am lasat si linkurile pentru a vedea ct de ieftine sunt in afara .

    Pentru doritori , le pot comanda foarte usor de pe ebay .

    Astept parerile voastre!

    În categoria Articole | Etichete , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , | Un comentariu

    Arduino – platformă gratuită pentru pasionații de electronică

    Arduino este o platformă gratuită destinată celor pasionați de electronică, studenți și ingineri din domeniu deopotrivă, dar și celor care doar au ca hobby construirea de montaje electronice.

    Arduino este atât un produs software cât și un concept, extinzând conceptul open source și asupra realizărilor tehnice concrete (scheme, cablaje electronice, etc.).

    Partea de software a platformei este integrată într-o interfață grafică de tip IDE bazată pe limbajul de programare Processing . Programarea controllerului de pe platforma fizică se face folosind limbajul de programare Arduino

    Proiectele fizice realizate pe platformele Arduino pot funcționa de sine stătător dar pot interacționa cu aplicații care funcționează pe un calculator precum Flash, Processing, MaxMSP.

    Cu platformele fizice Arduino puteți transforma calculatorul dumneavoastră într-un instrument de măsură complex sau într-un dispozitiv inteligent de testare și evaluare a prototipurilor.

    Mediul Integrat de Dezvoltare (IDE) Arduino

    Mediul integrat de dezvoltare Arduino este destinat scrierii programelor ce pot fi incărcate pe platformele fizice Arduino. Interfața este scrisă in Java și mediul de programare folosește limbaje de programare de tip open source precum Processing, avr-gcc. Interfața este multiplatformă, putând rula în Windows©, Mac OS X© și Linux. Programul poate fi obținut atât ca executabil specific platformei de lucru pe care o aveți dar și sub formă de cod sursă pe care il puteți compila conform condițiilor specifice pe care le aveți.

    Ultima versiune stabilă a programului este 0011 Alpha și poate fi obținută pe pagina oficială a proiectului.

    După instalare interfața principală a programului arată ca în captura de ecran de mai jos:

    Platforma hardware Arduino

    Pe scurt, platforma este o placă (de test, de circuit imprimat, etc.) de diferite forme fizice și design care are ca element central un circuit integrat programabil. Atât placa de bază cât și circuitul integrat programabil pot fi diferite, ceea ce conferă proiectelor realizate o flexibilitate in proiectare deosebită. Plăcile pot fi obținute contra cost, dar le puteți realiza și singuri deoarece schemele în baza cărora sunt construite sunt de tip open source. Multe, foarte multe informații suplimentare puteți afla pe pagina oficială de Internet a proiectului Arduino la secțiunea Hardware .

    Înarmați cu un mediu de programare și cu o platformă fizică simple și flexibile nu vă mai rămâne decât să vă suflecați mânecile și să treceți la treabă. Spor la lucru!

    În categoria Articole | Etichete , , , , , , , , , , , , , , | Comentariile sunt închise pentru Arduino – platformă gratuită pentru pasionații de electronică

    De unde ne luam echipamentele

    Romania (fara taxe vamale, taxe postale relativ mici)
    http://www.robofun.ro/

     

    Europa (fara taxe vamale, taxe postale variabile, in functie de transportator, cam de 5-10 euro)
    Jee Labs
    TinkerSoup (transport de la 7.50 euro)
    E-Lioness
    HW Kitchen (7.20 euro) Multe lucruri interesante, de la Seedstudio, inclusiv un osciloscop portabil foarte ieftin
    Futura Elettronica (doar in Italia?… de vazut…)
    Watterott (intre 0.00 kg si 30.00 kg = 10,00 EUR)
    BricoGeek
    Nuelectronics (pare cel mai convenabil pentru cantitati mici, gen 2-3 placi… 2 GBP pentru primul produs, cate 1 GBP pentru fiecare produs in plus in pachet)
    Libelium (exista Savings Packs, mai convenabile)
    E-Robotix (diverse, nu au Arduino)
    WingShield (producator shield extindere)
    Oomlout (up to 100g = 1.70 GBP)
    Floris.CC (transport > 5 euro, cotatie pret prin email)
    Robotev (preturi cam ca pe la noi; Bulgaria, doar trecem Dunarea si le-am si luat din Sofia 🙂

    Asia (preturi mici, taxe vamale, TVA, transport relativ redus, uneori chiar ZERO)
    Pe ebay se gasesc destule produse ieftine, cu transport inclus in Romania, in special de la: DFRobot(producator diverse, site in binecunoscuta limba chineza… produsele au numele in engleza…)

    Seeedstudio Destule chestii interesante, unele se gasesc in Europa la HWKitchen

    SUA si Canada
    Ramane de vazut daca merita taxele…

    Sursa:ro-duino.blogspot.com

    În categoria Articole | Etichete , , , , , | Comentariile sunt închise pentru De unde ne luam echipamentele

    Pachube – episodul 2

    Feed-urile din Romania incep sa fie reprezentate pe harta Pachube!
    De cateva zile a aparut Tag4M, a Wi-Fi Tag for Sensor Measurements, de la Universitatea Tehnica din Cluj-Napoca, Facultatea de Automatica si Calculatoare.
    Tag4M ofera „WiFi tags”, utilizate pentru a lega senzori la pagini de Web.

    Ar fi interesant de comparat eficienta si rentabilitatea variantei de mai sus cu JeeNodes de la Jee Labs care foloseste platforma Arduino.

    Daca reusesc sa achizitionez un Plug Shield si vreo 2-3 senzori pe interfata I2C va urma un nou episod 😉

    Sursa:ro-duino.blogspot.com

    În categoria Articole | Etichete , , | Comentariile sunt închise pentru Pachube – episodul 2