Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - Pierre34

Pages: [1] 2
1
Vos projets / Re : Ma première centrale DCC
« le: mars 08, 2023, 11:11:49 pm »

Bonsoir à tous ,

Merci à vous j'ai trouvé dans décodeur pro / préférence/ affichage un menu langue avec le choix du français.

Et cela marche bien . Ouf car déjà qu'en français il faut comprendre pas la peine de se compliquer avec l'anglais quand je ne le maitrise pas de manière courante.

Bien cordialement

2
Vos projets / Re : Re : Ma première centrale DCC
« le: mars 06, 2023, 08:21:02 pm »


Je suis en Mojave (10.14) et je n'ai aucune difficulté !!! J'ai d'ailleurs aussi dû avoir JMRI avec High Sierra sans problème non plus. Ceci est vraiment étonnant. Il faut perséverer, il n'y a pas de raison que ça n'aboutisse pas.

Bonsoir à tous,

J'ai persévéré. Après les sauvegardes d'usage j'ai passé mes deux Mac sur Mojave et j'ai retesté JMRI et son installation. Et là enfin cela fonctionne. En anglais toutefois je ne comprends pas comment le passer en français.
Merci pour vos conseils.
J'en déduis que sur High Sierra il est difficile de trouver les bonnes versions de JMRI et Java. 

Il me reste à comprendre JMRI. DecoderPro et SoundPro ouvrent des fenêtres de travail. Panel pro 5.2 me donne le choix entre quit et help. J'avaos compris que c'est lui qui permettait de dessiner le réseau.

Je vais poursuivre mon apprentissage

Bien coordialement

3
Vos projets / Re : Ma première centrale DCC
« le: mars 05, 2023, 12:39:36 am »
J'ai installé:

jdk-11.0.18_macos-x64_bin.dmg
et
JMRI.4.26+R381c8dfc32.dmg

Ai je bien compris?

et essayé avec et sans le dossier jre issu de zulu11.56.19-ca-jre11.0.15-macosx_x64.zip

J'ai essayé d'autres version de JMRI plus anciennes et plus récentes et d'autres versions java les jdk si j'ai bien compris.

Sans succés.


4
Vos projets / Re : Ma première centrale DCC
« le: mars 05, 2023, 12:19:54 am »
Merci pour vos encouragements.

Pour l'instant j'ai beau faire cela me donne toujours le même résultat. J'ai essayé plusieurs version de JMRI.
Je dois probablement mal faire quelque chose.

Sur mon Imac avec OS Lion même problème.

Par contre j'ai installé, via virtualbox, windows seven sur mon imac et là cela fonctionne , en anglais mais cela fonctionne.

5
Vos projets / Re : Ma première centrale DCC
« le: mars 02, 2023, 07:52:10 pm »
Merci pour votre réponse rapide.
J'ai refais toutes les désinstallations réinstallations mais toujours le même résultat.
Je crains qu'avec l'os High Sierra cela ne fonctionne pas. J'ai du mal à trouver les bonnes versions logicielles.

Dommage.

Je n'ai pas compris que cela pouvait fonctionner avec une tablette sous windows. Et j'avoue ne pas maitriser la connectique des tablettes. J'en ai une dont je ne me sers finalement pas. Savez vous si cela est réalisable?

6
Vos projets / Re : Ma première centrale DCC
« le: mars 01, 2023, 08:00:52 pm »
Bonjour à tous,

Avant de me lancer dans l'achat matériel j'ai souhaité installer JMRI sur mon mac book air sous OS High Sierra. J'ai testé plusieurs version de JMRI 4.24 et 5.2 la dernière à priori. J'ai eu la première fois le message installer java 11. Là cela devient plus compliquer pour comprndre quoi installer. J'ai essayer un java 11, un java 19 et puis enfin un Java 8 qui lui apparait bien dans les préférences de mon mac. J'ai désinstallé JMRI puis l'ai réinstallé.

Je n'ai plus de message sur Java. Quand je lance les programmes de JMRI ils tentent de s'ouvrir puis se ferme dans les 10s . Impossible d'avoir le moindre écran de l'application.

Auriez vous une idée pour que je puisse faire fonctionner ce programme JMRI?

Merci à vous

7
Vos projets / Re : Un Arduino par canton
« le: mai 11, 2021, 07:20:41 pm »
Merci beaucoup je vais essayer avec pwmsynchro.analogWrite(vitesse);

et merci pour les conseils

Bien cordialement

Pierre

8
Vos projets / Re : Un Arduino par canton
« le: mai 11, 2021, 06:48:03 pm »
désolé c'est un peu long. Je joins le setup et le loop. Il y a aussi plusieurs fonctions. Je compte ouvrir un projet sur le forum dés que j'aurai réussi cette intégration.

// déclaration des variables

#include <SyncPWM.h>
SyncPWM pwmsynchro;


const int pot_inertie_ACC = A0; // Règle l'inertie a l'accélération
int val_inertie_ACC; // Variable pour lire la valeur de pot_inertie_acc

const int detecteur_en_ZA = A1; // Détecteur produisant un signal 0v
bool etat_ZA = true; // si un train est à l'arrêt en ZA true sinon false

const int detecteur_en_ZT = A2; // Détecteur produisant un signal 0v
bool etat_ZT = true; // si un train est à l'arrêt en ZA, il l'est aussi en ZT true sinon false

const int pot_reglage = A6;  // potar pour régler la valeur max de la pwm et donc la vitesse

const int MarcheArret = A4; // Interrupteur marche arrêt

const int pot_inertie_FREIN = A5; // Règle l'inertie au freinage
int val_inertie_FREIN; // Variable pour lire la valeur de pot_inertie_frein

// A6 libre
// A7 libre

// LIBRE pour l'instant const int reglagevitesse = 2; // sur la pin 2 ou 3 exclusivement pour les interruption

const int led_feuxrouges = 4; // Led rouge si à l'arrët - Feu rouge
const int led_feuxoranges = A3; // Led orange si ralenti
const int led_feuxverts = 5; // Led verte si en marche - Feu vert

const int occup_canton_n1 = 13; // occupation du canton n1
const int occup_canton_n = 7; //  occupation du cabton n

const int led_A_B = 8; // Led sens de A vers B

//N1 et N2 correspondent aux bornes d'un pont en H L298N sont remplacés par DIR et PWM
const int BRAKE = 9; // Utilisation de BRAKE pour l'arrêt et le démarrage
const int DIR = 10; // Utilisation du PWM pour la direction
const int PWM = 3; // changer en 3 pour test syncpwm// Utilisation du PWM pour la valeur de PWM moteur analogique

const int LedMarcheArret = 12;
bool EtatMarcheArret = false; // on initialise Etat marche arrêt sur arrêt

int vitesse;
int vitesseralenti; // pour la vitesse de ralenti
int vitessearret; //pour mise en route
int vitessetest = 200;
int vitessetestetape6 = 50;
int mesure_potreglage = 0; // valeur pour mesurer la valeur du potar de réglage de la valeur max de la pwm
int mesure_potreglageancien = 0;

int etatinterruption = LOW;

int valDIR = 0;
int valPWM = 0;
int valBRAKE = 0;
int valeurmaxpwm =0;

bool sens_A_vers_B; // vrai si sens gare A vers gare B

int compteur; // pour suivre dans le monniteur l'avancement du programme
int timer = 3000;

int etat_detecteuren_ZA; // mémorise l'état du détecteur utilisé dans les tests HIGH si le détecteur a été actif
int etat_detecteuren_ZT; // quand N1 est libre le mettre systématiquement à LOW car nous l'utilisons pour un test qui provoque le ralenti du train.
                         //Si n1 devient libre avant l'arrêt du train il faut réinitialiser cette variable

//*************************************************************
void setup()
{
pinMode (BRAKE, OUTPUT);
digitalWrite (BRAKE,HIGH);
pinMode (DIR,OUTPUT);
pinMode (PWM, OUTPUT);
digitalWrite (DIR,LOW);
digitalWrite (PWM,LOW);
pinMode (MarcheArret,INPUT);
pinMode (LedMarcheArret,OUTPUT);
digitalWrite (LedMarcheArret,HIGH);

EtatMarcheArret= digitalRead (MarcheArret);
while (EtatMarcheArret == LOW)               // tant que le bouton marche arrêt n'est pas sur marche il ne se passe rien
{
EtatMarcheArret= digitalRead (MarcheArret);
}
// on passe l'état marche arrêt qui est devenu marche en ligne ci-dessus à arrêt pour mesurer plus tard le changement d'état du bouton marche arrêt

delay(300);

Serial.begin(9600);
digitalWrite (LedMarcheArret,LOW);
Serial.println("Etat Marche Arret");
Serial.println (EtatMarcheArret);

Serial.println( "demarrage du programme");

// Changement de fréquence du PWM
//TCCR1B &= 0xF8;
//TCCR1B |= B00000010;

  pwmsynchro.begin(6); // Start a synchronized PWM with sync on pin 6           
  pwmsynchro.analogWrite(30);

pinMode (occup_canton_n, OUTPUT);
digitalWrite (occup_canton_n, HIGH); // LOW pour libre, HIGH pour occupé

pinMode (occup_canton_n1, INPUT);

pinMode (pot_inertie_ACC, INPUT);
pinMode (pot_inertie_FREIN, INPUT);

valDIR = digitalRead (DIR);
Serial.println ("valeur DIR =");
Serial.println (valDIR);

valPWM = analogRead (PWM);
Serial.println ("valeur PWM =");
Serial.println (valPWM);
 
pinMode (detecteur_en_ZA, INPUT);
pinMode (detecteur_en_ZT, INPUT);

pinMode (led_A_B,OUTPUT); //  led de sens bicolore
digitalWrite (led_A_B,LOW);

pinMode (led_feuxrouges,OUTPUT);
digitalWrite (led_feuxrouges,HIGH);
pinMode (led_feuxverts,OUTPUT);
digitalWrite (led_feuxverts,LOW);
pinMode (led_feuxoranges,OUTPUT);
digitalWrite (led_feuxoranges,LOW);

analogWrite (vitesse,0);         // initialisation de la vitesse à 0                               

//attachInterrupt (0,Marche_Arret,FALLING); // validation du changement de vitesse ( commandé par le potentiomètre vitesse)
                                            // sur le réseau. mettre 0 si pin 2 et 1 si pin 3 V6 je change le nom de la fonction sans les ()

compteur =1;
etat_detecteuren_ZA = LOW; // ou = digitalRead (detecteur_en_ZA) mais le détecteur ne détecte pas si loco à l'arrêt
etat_detecteuren_ZT = LOW; //digitalRead (detecteur_en_ZT)

Serial.print ("test sur mise en route");
Serial.println (); 

 mise_en_route(); // cette fonction met les feux au rouge ou au vert et libère le brake pour que le LMD soit opérationnel

 //potreglagevitesse ();
   Serial.println("lecture réglage potentiomètre");
   mesure_potreglage = analogRead(pot_reglage);      //    lecture de la valeur du potar réglage valeur max de la pwm
   valeurmaxpwm = map(mesure_potreglage,0,1023,0,255);  // transfert de cette valeur en valeur correspondant à celle le la pwm
   Serial.print(valeurmaxpwm);
 
}
//*******************************************************
void loop()
{
  delay (30);// lorsque qu'une carte n'est pas une Arduino ou une Genuino

Serial.print ("passage dans le loop");
Serial.println ();

  Marche_Arret(); // arrêt d'urgence
  digitalRead(occup_canton_n1);
  Serial.print("occupation canton n1 = ");
  Serial.println(digitalRead(occup_canton_n1));
  digitalRead(occup_canton_n);
  Serial.print("occupation canton n = ");
  Serial.println(digitalRead(occup_canton_n));
  Serial.print("vitesse ");
  Serial.println (vitesse);
   Serial.print("lecture réglage potentiomètre");
   
   mesure_potreglage = analogRead(pot_reglage);      //    lecture de la valeur du potar réglage valeur max de la pwm
   valeurmaxpwm = map(mesure_potreglage,0,1023,0,255);  // transfert de cette valeur en valeur correspondant à celle le la pwm
   
   Serial.print("vitesse début loop ");
   Serial.println(vitesse);
   analogWrite(PWM,vitesse); // c'est celui ci qui me redonne la vitesse en fin étape 4 à l'initialisation
  detection();
}

9
Vos projets / Re : Un Arduino par canton
« le: mai 11, 2021, 06:19:14 pm »
Non sur les arduino canton. Sur l'arduino qui envoie le clock je n'ai mis que le programme master clock et rien d'autre

#include <SyncPWM.h>

SyncPWM sp;

void setup() {
  sp.beginMasterClock();  // start a master clock on PWM pin 3 on Uno/Nano
                          // pin 6 on a Leonardo
}

void loop() {
}

10
Vos projets / Re : Un Arduino par canton
« le: mai 11, 2021, 01:39:13 pm »
Bonjour Jean Luc,

Merci pour cette réponse rapide.

Pour la vitesse j'utilise un potentiomètre de 10kohms sur la broche A6 et le programme suivant:


void potreglagevitesse ()
{   
   Serial.println("lecture réglage potentiomètre");
   mesure_potreglage = analogRead(pot_reglage);      //    lecture de la valeur du potar réglage valeur max de la pwm
   valeurmaxpwm = map(mesure_potreglage,0,1023,0,255);  // transfert de cette valeur en valeur correspondant à celle le la pwm
   vitesse = valeurmaxpwm;
   analogWrite (PWM, vitesse);
}

Pour le câblage ai je bien compris?

Bien cordialement

11
Vos projets / Re : Un Arduino par canton
« le: mai 10, 2021, 08:59:37 pm »
bonsoir Jean Luc,

Après avoir utiliser la bibliothéque PWM Freq qui fonctionne parfaitement, barvo, j'essaye toujours d'intégrer Syncpwm à mes programmes de cartes canton bâties autour d'un arduino nano et d'un LMD 18200. J'ai lu que les deux bibliothèques sont incompatibles j'en ai tenu compte.

J'ai compris qu'il fallait un arduino maitre sur lequel j'installe le programme Masterclock comme cité dans les exemples.
Je récupère une horloge maitresse sur la pin 3 de cet arduino maitre.
J'ai 17 cartes cantons. J'envoie l'horloge maitresse par 17 fils en parallèles sur la broche 8.
Je récupère la PWM de chaque carte canton esclave sur la pin 3 et c'est elle que je connecte au LMD18200. 

J'ai fait l'essai avec un arduino maitre n'ayant que le programme master clock téléchargé.

Constat: je ne peux pas régler la vitesse. Je suis toujours à vitesse max.

Question 1 :ai je bien compris le câblage?
Question 2: cet arduino maitre peut il être une des cartes cantons?
Question 3 : que fais je de mal pour ne plus pouvoir régler la vitesse?
Question 4: mes cartes sont malheureusement déjà cablées avec la pwm entre arduino et le LMD18200 sur la broche 11 compatible comme la broche 3 avec le timer 2. Pour pouvoir utiliser la broche 11 au lieu de la 3 pour la PWM suffit il de changer dans Syncpwm.cpp en lignes 59 et 86 le chiffre 3 par 11? Cela a t il une influence sur la pin de sortie de la masterclock?

Question 5: pour récupérer l'horloge maitresse sur la pin 6 au lieu de la pin 8 suffit il d'écrire pwm.begin(6)?

Beaucoup de questions en fait

Merci par avance
Bien cordialement
Pierre

12
Vos projets / Re : Un Arduino par canton
« le: avril 30, 2021, 01:40:39 am »
Merci pour cette réponse rapide.

J'ai fait la modification indiquée et cela compile parfaitement et sur le maitre et sur l'esclave.

Parfait et bravo.

Cordialement

Pierre

13
Vos projets / Re : Un Arduino par canton
« le: avril 29, 2021, 02:19:40 pm »
Bonjour Jean Luc

J'essaie d'utiliser la bibliothèque SyncPWM. Sur les cartes cantons esclaves arduino nano j'ai inclus les deux lignes
#include <SyncPWM.h>
SyncPWM pwmsynchro;

et ces deux là dans le setup
  pwmsynchro.begin(6); // Start a synchronized PWM with sync on pin 6           
  pwmsynchro.analogWrite(30);

à la compilation j'ai ce message d'erreur:

Arduino : 1.8.13 (Mac OS X), Carte : "Arduino Nano, ATmega328P (Old Bootloader)"

In file included from /Users/Pierre/Library/Arduino15/packages/arduino/tools/avr-gcc/7.3.0-atmel3.6.1-arduino7/avr/include/avr/io.h:99:0,
                 from /Users/Pierre/Library/Arduino15/packages/arduino/tools/avr-gcc/7.3.0-atmel3.6.1-arduino7/avr/include/avr/pgmspace.h:90,
                 from /Users/Pierre/Library/Arduino15/packages/arduino/hardware/avr/1.8.3/cores/arduino/Arduino.h:28,
                 from /Users/Pierre/Documents/Arduino/libraries/SyncPWM-master/SyncPWM.h:24,
                 from /Users/Pierre/Documents/Arduino/libraries/SyncPWM-master/SyncPWM.cpp:24:
/Users/Pierre/Documents/Arduino/libraries/SyncPWM-master/SyncPWM.cpp:123:29: error: stray '$' in program
         TIMSK2 = _BV(OCIE2A=$);
                             ^
/Users/Pierre/Documents/Arduino/libraries/SyncPWM-master/SyncPWM.cpp: In member function 'void SyncPWM::begin(byte)':
/Users/Pierre/Documents/Arduino/libraries/SyncPWM-master/SyncPWM.cpp:123:18: error: expected primary-expression before ')' token
         TIMSK2 = _BV(OCIE2A=$);
                  ^
exit status 1
Erreur de compilation pour la carte Arduino Nano

Et là j'avoue que cela dépasse mes compétences.

Ai je oublié d'inclure une bibliothèque?
Dans la bibliothèque avr je n'ai pas de io.h et dans pgmspace.h il n'y a pas de ligne 99 cela s'arrête à la ligne 44

14
Vos projets / Re : Un BV animé par ATtiny 85
« le: avril 23, 2021, 02:07:45 pm »
Merci beaucoup pour la réponse et le lien.

Votre site contient tellement d'informations que le plus difficile est de trouver les bons mots pour une recherche.
J'avoue  que je passe du temps à ouvrir tous les fils de conversation et si je ne note pas le nom du fil je ne retrouve que très difficilement l'information.

Je cherchais ATtiny 85 je ne risquais pas de trouver effectivement.

Bravo pour votre site
Bien cordialement

Pierre

15
Vos projets / Re : Un BV animé par ATtiny 85
« le: avril 15, 2021, 08:12:41 pm »
Euréka.
En cherchant sur internet j'ai trouvé. La toute première étape celle qui transforme l'arduino en programmateur doit se faire en Arduino UNO ISP et non pas arduino as ISP. et là le programme compile et la suite se passe bien.

Ouf

Pages: [1] 2