Show Posts
Pages: [1] 2
1  Using Arduino / Project Guidance / Re: EasyVr + DS18B20 Temp sensor on: October 08, 2013, 03:49:06 pm
I saw it but the problem is not the precision but the loop. I dont want the Arduino to check in loop the temperature. I want him to check it only once when I ask him in the action. But when I ask him in the action to go in another fonction, the arduino crash.
2  Using Arduino / Project Guidance / EasyVr + DS18B20 Temp sensor on: October 08, 2013, 02:45:04 pm
Hi all

I'm currently doing a small project and I will like to read the DS18B20 dat only once.
I found a program that read it but it make my easy vr program fail.
Does anyone know how can I ask him to read only one time the data. Thk

Here is my code.
(code tags added by Moderator)
Code:
#if defined(ARDUINO) && ARDUINO >= 100
  #include "Arduino.h"
  #include "SoftwareSerial.h"
  SoftwareSerial port(12,13);
  
#else // Arduino 0022 - use modified NewSoftSerial
  #include "WProgram.h"
  #include "NewSoftSerial.h"
  NewSoftSerial port(12,13);
  NewSoftSerial port(3,4);
  
  
#endif

int TEMP_Pin = 2;
#include <OneWire.h>

OneWire ds(TEMP_Pin);

#include "EasyVR.h"
EasyVR easyvr(port);

//Groups and Commands
enum Groups
{
  GROUP_0  = 0,
  GROUP_1  = 1,
};

enum Group0
{
  G0_VAL = 0,
  G0_UNNAMED_COMMAND_1 = 1,
};

enum Group1
{
  G1_ON = 0,
  G1_OFF = 1,
};


EasyVRBridge bridge;

int8_t group, idx;

void setup()
{
  // bridge mode?
  if (bridge.check())
  {
    cli();
    bridge.loop(0, 1, 12, 13);
  }
  // run normally
  Serial.begin(9600);
  port.begin(9600);

  if (!easyvr.detect())
  {
    Serial.println("EasyVR not detected!");
    for (;;);
  }

  easyvr.setPinOutput(EasyVR::IO1, LOW);
  Serial.println("EasyVR detected!");
  easyvr.setTimeout(5);
  easyvr.setLanguage(5);

  group = EasyVR::TRIGGER; //<-- start group (customize)
}

void action();

float getTemp(){
 //returns the temperature from one DS18S20 in DEG Celsius

 byte data[12];
 byte addr[8];

 if ( !ds.search(addr)) {
   //no more sensors on chain, reset search
   ds.reset_search();
   return -1000;
 }

 if ( OneWire::crc8( addr, 7) != addr[7]) {
   Serial.println("CRC is not valid!");
   return -1000;
 }

 if ( addr[0] != 0x10 && addr[0] != 0x28) {
   Serial.print("Device is not recognized");
   return -1000;
 }

 ds.reset();
 ds.select(addr);
 ds.write(0x44,1); // start conversion, with parasite power on at the end

 byte present = ds.reset();
 ds.select(addr);  
 ds.write(0xBE); // Read Scratchpad

 
 for (int i = 0; i < 9; i++) { // we need 9 bytes
  data[i] = ds.read();
 }
 
 ds.reset_search();
 
 byte MSB = data[1];
 byte LSB = data[0];

 float tempRead = ((MSB << 8) | LSB); //using two's compliment
 float TemperatureSum = tempRead / 16;
 
 return TemperatureSum;
 
}

void loop()
{
  easyvr.setPinOutput(EasyVR::IO1, HIGH); // LED on (listening)
  Serial.print("Say a command in Group ");
  Serial.println(group);
  easyvr.recognizeCommand(group);
 
  do
  {
    // can do some processing while waiting for a spoken command
  }
  while (!easyvr.hasFinished());
  
  easyvr.setPinOutput(EasyVR::IO1, LOW); // LED off

  idx = easyvr.getWord();
  if (idx >= 0)
  {
    // built-in trigger (ROBOT)
    // group = GROUP_X; <-- jump to another group X
    return;
  }
  idx = easyvr.getCommand();
  if (idx >= 0)
  {
    // print debug message
    uint8_t train = 0;
    char name[32];
    Serial.print("Command: ");
    Serial.print(idx);
    if (easyvr.dumpCommand(group, idx, name, train))
    {
      Serial.print(" = ");
      Serial.println(name);
    }
    else
      Serial.println();
    easyvr.playSound(0, EasyVR::VOL_FULL);
    // perform some action
    action();
  }
  else // errors or timeout
  {
    if (easyvr.isTimeout())
      Serial.println("Timed out, try again...");
    int16_t err = easyvr.getError();
    if (err >= 0)
    {
      Serial.print("Error ");
      Serial.println(err, HEX);
    }
  }
}

void action()
{
    int temperature = getTemp();
    switch (group)
    {
    case GROUP_0:
      switch (idx)
      {
      case G0_VAL:
        // write your action code here
        group = GROUP_1;
        // group = GROUP_X; <-- or jump to another group X for composite commands
        break;
      case G0_UNNAMED_COMMAND_1:
        // write your action code here
        group = GROUP_1;
        // group = GROUP_X; <-- or jump to another group X for composite commands
        break;
      }
      break;
    case GROUP_1:
      switch (idx)
      {
      case G1_ON:
        // write your action code here
         group = GROUP_0;
        // group = GROUP_X; <-- or jump to another group X for composite commands
         digitalWrite(11, HIGH);   // set the LED on
         Serial.println(" La led est allume. ");
         Serial.println(temperature);
         break;
        
      case G1_OFF:
        // write your action code here
         group = GROUP_0;
        // group = GROUP_X; <-- or jump to another group X for composite commands
        digitalWrite(11, LOW);  
        break;
      }
      break;
    }
}
3  Using Arduino / Displays / Re: GLCD with Arduino Nano on: August 27, 2013, 10:52:02 am
Thank you very much Bill. You clarify everything.
I guess I will have to redo my pcb.  smiley-sad but that the life. We learn!  smiley-wink
4  Using Arduino / Project Guidance / Re: How to change the default pin assignment in a library. on: August 26, 2013, 03:57:15 pm
Damn! That bad I gonna need to reprint my pcb.  smiley-confuse
5  Using Arduino / Project Guidance / Re: How to change the default pin assignment in a library. on: August 26, 2013, 03:36:14 pm
Can you explain more plz?? Thk
6  Using Arduino / Project Guidance / How to change the default pin assignment in a library. on: August 26, 2013, 03:25:55 pm
I'm working with the arduino nano v3.0 and I have done a PCB.
I did a mistake and I will like to know how to change pin assignment in a library so that my analog 0 become 3
1 become 4
2 become 5
3 become 6 and
4 become 7

I'm working with the glcd ks0108

Thank you

Math
7  Using Arduino / Displays / Re: GLCD with Arduino Nano on: August 26, 2013, 02:13:55 pm
Ok I found that it was a problem of wiring.
So i need your help.
Since my pcb is already done, i will like to know how to tell to the glcd that the analog7 is analog 0 and etc.

Thk
8  Using Arduino / Displays / GLCD with Arduino Nano on: August 26, 2013, 01:39:38 pm
Hi everyone, I'm trying to connect this (https://www.sparkfun.com/products/710) to a Arduino Nano.
The glcd is getting on and I can see the color but noting happen with all the exemple program in the GLCD version 3.0 library.
Can some one help me?
I did a small pcb with oshpark and everything is plug on it.


Hope somebody will be able to help me! Thk
9  International / Français / Re: Besoin d'aide pour code RGB Led stip + 4 boutons. on: November 30, 2012, 11:48:45 am
Cela fonctionne. J'ai embriquer mon code de boutons dans chaque for et cela fonctionne.
10  International / Français / Re: Besoin d'aide pour code RGB Led stip + 4 boutons. on: November 29, 2012, 11:04:20 am
C'est ce que je croyais. Donc je vais prendre les lignes de codes de mes boutons et les mettre dans chaque boucle for. J'essaye cela et je te reviens la dessus. Merci
11  Using Arduino / Project Guidance / RGB led Strip + 4 Buttons + Mp3 Shield on: November 29, 2012, 10:08:34 am
Hi Guys
First of all, sorry for mistake, I'm french.
I'm actually doing a lamp for my girlfriend with a rgb led strip. Everything work fin. I decided to had a Mp3 Shield and 4 buttons so she can push boutons to hear sound. I'm can make the 2 thinks work alone but when I but the code together I have a problem. The arduino to all the For before reading the buttons. Can you help me with the code so that the arduino always check the 4 buttons and in the same time to the fade program for the rgb led strip.

Thk

I will update code tonight.

Math
12  International / Français / Besoin d'aide pour code RGB Led stip + 4 boutons. on: November 29, 2012, 09:31:20 am
Bonjour à tous!
J'aurai besoin de votre aide pour un petit projet que je fais pour ma copine.
J'ai une strip de led rgb (Sparkfun https://www.sparkfun.com/products/10259) et j'ai connecté 4 boutons et un mp3 player (Sparkfun https://www.sparkfun.com/products/10628).
J'ai mis le code de adafruit pour la strip et tous fonctionne. J'ai aussi réussi à faire fonctionner mes 4 boutons sans aucuns problemes. Mais le problème c'est lorsque j'essaye de mettre les 2 en même temps.
L'arduino lit les boutons uniques après avoir faire la boucle des for pour la strip. Alors lorsque je pèse sur un boutons, je dois attendre que la boucle soit fini avant d'entendre mon son.
Avez-vous une idée pour que ma boucle de for pour la strip se face toujours mais que en tous temps je vérifie mes boutons. Une question de code selon moi.

Merci
13  International / Français / Projet Arduino Avant-bras Multi-Usage on: November 15, 2012, 01:05:42 pm
Bonjour à tous!
 Je suis un débutant dans le monde Arduino et l'électronique. J'étudie en Génie de Production automatisée, Technologie de la Santé et j'ai comme rêve depuis que je suis tout petit de me faire un exosquelette. Bien évidemment le projet semble fou mais c'est en rêvant qu'on évolue! Alors voilà, je commence le projet par un avant-bras multi-usage.

J'aimerai implanter plusieurs sensors sur un avant-bras afin d'avoir accès à plusieurs information vitale.
Voici la liste des objets que j'espère implanter.

https://www.sparkfun.com/products/594
https://www.sparkfun.com/products/11050
https://www.sparkfun.com/products/710
https://www.sparkfun.com/products/11574
https://www.sparkfun.com/products/8606
https://www.sparkfun.com/products/9088
https://www.sparkfun.com/products/8662

Je débute avec un arduino Uno R3 (j'ai aussi un Due mais j'attend qu'il soit plus développé)

Premier défis: Un PCB pour incorporer le GLCD, le temp sensor, le laser et 1 boutons.
Voici une esquisse que j'ai fait! Il y a t-il des pro de Eagle qui pourraient m'aider!
http://www.flickr.com/photos/90125930@N06/8187852397/in/photostream

À suivre!

Math
14  International / Français / Re: 3.3V vs 5V Arduino Due! on: November 15, 2012, 08:12:44 am
68tjs: Je comprend parfaitement! Merci énormément pour toutes les informations!
Au plaisir!

Math
15  International / Français / Re: 3.3V vs 5V Arduino Due! on: November 14, 2012, 03:58:19 pm
68tjs:
sur http://www.atmel.com/devices/SAM3X8E.aspx?tab=parameters
 il est écrit : Operating Voltage (Vcc): 1.62 to 3.6

Est-ce que cela signifie que 2.5 volt suffirais pour être considérer comme un 1??
Pages: [1] 2