Recent Posts

Pages: [1] 2 3 ... 10
1
Programming Questions / Re: Dictionary type lookup tab...
Last post by BIOT - Today at 08:13 pm
The following code uses parallel arrays or 2-dimentioned arrays. You can toggle them by using the #define SINGLE preprocessor directive. For beginners, I would think the parallel arrays is easier to understand, but I appreiciate how they can get out of sync.

Code: [Select]

#define ELEMENTCOUNT(x) (sizeof(x) / sizeof(x[0]))

#define SINGLE  // comment out for single array

#ifdef SINGLE
char operators[] = {'+', '-', '*', '/'};
char *words[] = {"add", "subtract", "multiply", "divide"};
#else
char *tokens[][2] = { {"+","add"}, {"-", "subtract"},
                      {"*","multiply"}, {"/", "divide"}
                    };
#endif
void setup() {
  Serial.begin(9600);
}

void loop() {
  char c[2];
  int index;
 
  if (Serial.available() > 0) {
    c[0] = Serial.read();

    index = FindWord(c);

    Serial.print("For operator ");
    Serial.print(c);
    Serial.print(" the word is ");
    if (index != -1) {
#ifdef SINGLE     
      Serial.println(words[index]);
#else
      Serial.println(tokens[index][1]);
#endif
    } else {
      Serial.println("not not found in list.");
    }
  }
}

/*****
  Purpose: to search a list of operators for a match on the target operator

  Parameter list:
    char target     the operator to find

  Return value:
    int             the index for a match, -1 no match
*****/
int FindWord(char *target)
{
  int i;

#ifdef SINGLE   
  for (i = 0; i < ELEMENTCOUNT(operators); i++) {
    if (operators[i] == target[0]) {
#else
  for (i = 0; i < ELEMENTCOUNT(tokens); i++) {
    if (strcmp(tokens[i][0], target) == 0) {
#endif
      return i;
    }
  }
  return -1;
}


Just pasted the code and ran it. OMG it worked!  THANK YOU SO MUCH!

Now I just need to focus for a bit to understand whats its doing ... ;)
2
Try Google image search.

Paul
3
Deutsch / Re: Heart Rate Monitor Sensor ...
Last post by postmaster-ino - Today at 08:12 pm
Hi

Da diese Variablen in Deinen Code-Fragmenten nicht vorhanden sind, kann ich Dir auch nicht sagen, wo Du Welche davon falsch benutzt.
Sieht aber so aus, daß Du BEIDE immer wieder auf den gleichen Wert setzt - ggf. aktualisierst Du previous bereits vor diesem Seria.print, musst also nur die Aktualisierung hinter das Print verschieben.

MfG
4
Robotics / Re: HELP ( program for line fo...
Last post by vinceherman - Today at 08:12 pm
Help me out.
You are trying to follow a line using one sensor?  The only way I can see that working is if you sweep the sensor back and forth so that you can tell if the line is moving to the left or the right as your vehicle moves.
5
Français / Re: Réaliser un programme pour...
Last post by mjb - Today at 08:12 pm
Bonjour et merci pour ce nouveau programme qui fonctionne parfaitement avec la possibilité de ne pas accélérer et décélérer lors d'un mouvement.

J'ai vu que tu avais ajouté une ligne "analogWrite(VD,vit_finale);analogWrite(VG,vit_finale);" je me suis dit que ça m'aiderait à comprendre la logique de ta programmation mais non, l'écriture du void mouvement reste encore mystérieuse pour moi ça doit être sacrement sophistiqué.

Pour répondre à ta dernière question, oui, je souhaite programmer éventuellement des cercles ou des courbes mais je ne connais pas le diamètre exact, je fais de la recherche avec ce petit robot pour connaitre ses possibilités et ses limites. l'idéal serait de pouvoir programmer indépendamment la vitesse des deux roues gauche et celle des roues droites de la même manière que l'on peut programmer la vitesse d'avancement dans ton programme. Je me dis que si je veux aller tout droit, en théorie, je programme la même vitesse sur les deux côtés. J'ai aussi pensé que cela m'aiderait à corriger un problème de direction (une légère courbe) que le robot fait systématiquement peut être à cause d'un problème de puissance moteur ou de répartition de poids ou d'adhérence.

Mon projet final, c'est de construire un robot de taille moyenne avec une esthétique très particulière qu'un lapin et un cochon d'inde conduiraient tout en dialoguant sur le parcours à suivre... ils franchiraient un pont et une bascule, se laceraient des paris par exemple, celui de  faire une courbe, de suivre un tracé, de renverser un objet... Cela peut paraitre délirant sur ce site mais c'est relativement sérieux dans le cadre de la construction d'un spectacle jeune public.

Je constate avec le robot car kit que l'une des limites du robot actuel à trait aux trajectoires qui ne sont pas assez précise et ne se reproduisent pas à l'identique. Il me faut trouver une solution pour la construction finale. J'aurai aussi besoin d'un coup de main pour le choix des moteurs et du contrôleur car je suppose que celui du robot actuel ne sera pas assez puissant.

Pour notre humanoïde, je t'ai fait une vidéo "à l'arrache" à 22h. dans le but de te remercier j'aurais aimé faire mieux en qualité. Il y a une vidéo de meilleure qualité sur notre site http://www.zampanos.net/?page_id=41 Mais elle n'est pas personnalisée. L'humanoïde se nomme Brioux, il se déplace aussi dans la rue sur son chariot de manière autonome en parlant aux gens. il demande parfois à quelqu'un de le prendre dans ses bras.


Dans ton avant-dernier message, tu me dis qu'il ne faut pas supprimer la ligne Serial.begin car elle initialise la liaison série avec le moniteur. Je l'ai supprimée et ça fonctionne pourtant bien. Que peut-il arriver par la suite si je ne la remet pas ?

l'empattement des roues est de 127mm. de milieu à milieu, elles font 26mm. de large et 67mm. de diamètre.

Encore merci pour ton aide.

Michel
6
First of all: Do not post the code, you think is necessary.. Post ALL the code! No one can guesstimate what "bme" and "myWire" are. My guess is, that the typecasting "(TwoWire) &myWire" should have been either "(TwoWire*) &myWire" or "(TwoWire) myWire".
7
Le bar / Comment utiliser TembooDS18B20...
Last post by wood_man - Today at 08:10 pm
Bonjour

J'utilise des capteurs DS18B20 et je suis passe à la version arduino 1.8.5.
Je ne peux plus utiliser la librairie OneWire et DallasTemperature.h car j'ai des erreurs à la compilation de type conflit

In file included from /home/serge/arduino-1.8.5/hardware/arduino/avr/cores/arduino/Arduino.h:231:0,
                 from /home/serge/arduino-1.8.5/libraries/OneWire/OneWire.cpp:85:
/home/serge/arduino-1.8.5/hardware/arduino/avr/cores/arduino/WString.h:126:83: error: conflicting declaration of C function 'StringSumHelper& operator+(const StringSumHelper&, const char*)'
  friend StringSumHelper & operator + (const StringSumHelper &lhs, const char *cstr);
                                                                                   ^


#include <Wire.h>
#include <SPI.h>
#include <Ethernet.h>
#include <Ultrasonic.h>
#include <OneWire.h>
#include <DallasTemperature.h>

J'essaie d'utiliser les librairies de la 1.8.5 via Temboo.h

#include <Temboo.h>
#include "utility/TembooDS18B20.h"

Je ne trouve pas d'exemple sur internet sur cette librairie.
Avez-vous des exemples de projets ?
Merci.

8
Programming Questions / Re: MIDI code problem with wri...
Last post by Adun - Today at 08:10 pm
You probably didn't include the library:
Code: [Select]
#include "MIDIUSB.h"
as shown in the example here but there's no way to know for sure because you didn't post all your code.
If you do post your code, post it in code tags.

Pete
Im making a MIDI controller the controller cant make sound on its own only through a computer ...
so what kind of code should I write ? I wrote this
Code: [Select]

void setup() {
#include "MIDIUSB.h";
 MidiUSB.sendMIDI(midiEventPacket_t event);
 MidiUSB.flush();

}


and this is the error
Arduino: 1.8.5 (Windows 7), Board: "Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)"

C:\Users\Adun\AppData\Local\Temp\arduino_modified_sketch_556792\sketch_feb22a.ino:2:22: fatal error: MIDIUSB.h: No such file or directory

 #include "MIDIUSB.h";

                      ^

compilation terminated.

exit status 1
Error compiling for board Arduino/Genuino Mega or Mega 2560.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

9
I have changed the button configuration: {D0, D1, D2, D3} now D0 works one time and then make the led blink. D1, D2 and D3 keep working as intend.
10
MKRWAN1300 / Re: sleep mode to mkr Wan 1300
Last post by Halflifo - Today at 08:08 pm
Hello!

If you want deep sleep, or standby sleep mode:

Code: [Select]

  SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk;          // Setting sleep mode to Standby
  __WFI();                                    // sleep


Otherwise read in the samd21 datasheet, or search for how to sleep the arduino zero, it is the same.
Pages: [1] 2 3 ... 10