AccueilAccueil  MumbleMumble  WIPs Team PP  RechercherRechercher  MembresMembres  S'enregistrerS'enregistrer  ConnexionConnexion  Liens  




Partagez | 
 

 [WIP 96%] Mon premier pincab : transfomation zaccaria

Voir le sujet précédent Voir le sujet suivant Aller en bas 
Aller à la page : Précédent  1, 2, 3, 4, 5, 6, 7, 8, 9, 10  Suivant
AuteurMessage
kakou

avatar

Messages : 434
Département : 18

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Dim 23 Avr 2017 - 12:18

Voici le code wemos qui a l'air de fonctionner chez moi (je recois bien des paquets de dof), pour la suite, j'attends d'avoir des ledstrips adressables, car la je test un peu dans le vide Smile

Code:

/*
  SmartShow AirPixel ONE - Single Universe ArtNet to WS2812 Driver - For Wemos D1
  You can set the Device IP, and universe number below
  Works perfectly with Jinx LED software
 */

#include <ESP8266WiFi.h>
#include <WiFiUdp.h>

#define WSout 5  // Pin D1
#define WSbit (1<<WSout)

// ARTNET CODES
#define ARTNET_DATA 0x50
#define ARTNET_POLL 0x20
#define ARTNET_POLL_REPLY 0x21
#define ARTNET_PORT 6454
#define ARTNET_HEADER 17

WiFiUDP udp;

uint8_t uniData[514];
uint16_t uniSize;
uint8_t hData[ARTNET_HEADER + 1];
uint8_t net = 0;
uint8_t universe = 0;
uint8_t subnet = 0;

const char* ssid    = "XXXXXX";
const char* password = "XXXXXXXXXXXXXX";

IPAddress local_ip(192, 168, 4, 123);
IPAddress gateway_ip(192, 168, 4, 254);
IPAddress subnet_ip(255, 255, 255, 0);

void setup() {
        Serial.begin(115200);
        delay(10);
        Serial.println();
        Serial.println();
        Serial.print("Connecting to ");
        Serial.println(ssid);

        WiFi.begin(ssid, password);
        WiFi.config(local_ip, gateway_ip, subnet_ip);

        while (WiFi.status() != WL_CONNECTED) {
                delay(500);
                Serial.print(".");
        }

        udp.begin(ARTNET_PORT); // Open ArtNet port

        Serial.println("");
        Serial.println("WiFi connected");
        Serial.println("IP address: ");
        Serial.println(WiFi.localIP());

        pinMode(WSout, OUTPUT);
}



void ICACHE_FLASH_ATTR sendWS() {
        uint32_t writeBits;
        uint8_t bitMask, time;
        os_intr_lock();
        for (uint16_t t = 0; t < uniSize; t++) { // outer loop counting bytes
                bitMask = 0x80;
                while (bitMask) {
                        // time=0ns : start by setting bit on
                        time = 4;
                        while (time--) {
                                WRITE_PERI_REG( 0x60000304, WSbit ); // do ON bits // T=0
                        }
                        if ( uniData[t] & bitMask ) {
                                writeBits = 0; // if this is a '1' keep the on time on for longer, so dont write an off bit
                        }
                        else {
                                writeBits = WSbit; // else it must be a zero, so write the off bit !
                        }
                        time = 4;
                        while (time--) {
                                WRITE_PERI_REG( 0x60000308, writeBits ); // do OFF bits // T='0' time 350ns
                        }
                        time = 6;
                        while (time--) {
                                WRITE_PERI_REG( 0x60000308, WSbit ); // switch all bits off  T='1' time 700ns
                        }
                        // end of bite write time=1250ns
                        bitMask >>= 1;
                }
        }
        os_intr_unlock();
}

void loop() {
        if (udp.parsePacket()) {
                Serial.print("Arnet packet :)");
                udp.read(hData, ARTNET_HEADER + 1);
                if ( hData[0] == 'A' && hData[1] == 'r' && hData[2] == 't' && hData[3] == '-' && hData[4] == 'N' && hData[5] == 'e' && hData[6] == 't') {
                        if ( hData[8] == 0x00 && hData[9] == ARTNET_DATA && hData[15] == net ) {
                                if ( hData[14] == (subnet << 4) + universe ) { // UNIVERSE
                                        uniSize = (hData[16] << 8) + (hData[17]);
                                        udp.read(uniData, uniSize);


                                      Serial.print("hData :");
                                        for (int i=0;i<18;i++)
                                          Serial.print(hData[i]);
                                        Serial.println("");
                                        /*Serial.print("uniData :");
                                        for (int i=0;i<514;i++)
                                          Serial.print(uniData[i]);
                                        Serial.println("");
                                        */

                                        Serial.print("ArtNet packet RX Uni 0 - size:");
                                        Serial.println(uniSize);
                                        sendWS();
                                }
                        } // if Artnet Data
                }
        }
}
Revenir en haut Aller en bas
kakou

avatar

Messages : 434
Département : 18

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Jeu 27 Avr 2017 - 16:41

Installation d'un knocker de recupération et d'une cloche/bell (en fait une ancienne sonnette)
Testé sous Williams Fire, la sonnette fait un peu sursauté quand elle se met en route, mais c'est du plus belle effet Smile

Knocker avant decapage


La sonnette


Le knocker décapé/installé



Le cablage actuel




Le pinball actuel

Revenir en haut Aller en bas
Aetios

avatar

Messages : 1041
Département : 50

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Jeu 27 Avr 2017 - 17:57

bravo
Revenir en haut Aller en bas
https://www.facebook.com/TheFrenchclanclan/
kakou

avatar

Messages : 434
Département : 18

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Jeu 27 Avr 2017 - 19:55

merci @aetios

j'essai de créer un combo pour que ma sonnette sonne quand le knocker claque

Donc dans dof, j'ai créer une combo "combo1" mono avec le "knocker" et le "bell" dedans
Par contre je ne comprends pas la suite, il faut assigner "combo1" a un port de la ledwiz-arduino ? mais moi j'ai deja un port pour le knocker et un pour le bell ??? ou alors c'est juste pour mettre deux toys sur le même port ?

Je suis sur que @mariopourlavie peux m'aider A la tienne


Dernière édition par kakou le Jeu 27 Avr 2017 - 21:08, édité 1 fois
Revenir en haut Aller en bas
leevuth
Modérateur
avatar

Messages : 3047
Département : Yvelines

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Jeu 27 Avr 2017 - 20:59

Très bon travail @Kakou 


Pinball FX2-Arcade : I3 560 4go Ram Radeon HD 7770 Win7 32 SSD 120 go   LG  LCD 23 " IPS (Playfield) No name LCD 7" DMD Xbox 360 controller hack + boutons 28mm
Visual Pinball 9.9 - X : AMD A8 7670K - 8go Ram - Radeon HD 7950 - Win7_64 - SSD 240go - Samsung LCD 27" PLS (Playfield) - LG 19 " (Backglass) - Virtuapin Plunger Kit V2 + boutons 28mm - Pin2dmd
Revenir en haut Aller en bas
PHILI50



Messages : 755
Département : 50

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Jeu 27 Avr 2017 - 21:21

Pourquoi tu t'embetes , tu actives une seconde sortie knocker sur un autre port et se sera ta sonnette qui sera branchee dessus .Les deux s'activeront ensemble lorsque le knocker claquera.
Revenir en haut Aller en bas
kakou

avatar

Messages : 434
Département : 18

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Jeu 27 Avr 2017 - 21:35

Si je met knocker comme nom sur mon bell, je n'aurai plus le bell
Revenir en haut Aller en bas
mariopourlavie
Modérateur
avatar

Messages : 1721
Département : 38

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Jeu 27 Avr 2017 - 21:40

Re,

Phili50 a presque raison, si tu n'as pas besoin de la cloche sur la table taxi... 

Voilà comment je vois les choses.

de ce que j'ai compris le combo permet de déclencher simultanément deux toys, qu'ils reçoivent l'ordre de l'un ou de l'autre.

Du coup Cela n'ira pas si tu veux les garder uniques, surtout la cloche...

Moi je ferais différemment, je prendrais l'idée de phili50 mais sur cette deuxième sortie je mettrais une diode "anti retour" comme ça ta cloche sonnera avec le knocker mais quand la cloche est déclenchée par le dof dans taxi par exemple, alors il sera seul...

Si tu veux un schéma dis le moi...

Mais tu as eu une super idée là, et ça vaut le coup de sy pencher dessus 

Ha oui, bravo pour les travaux sur le pincab 
Revenir en haut Aller en bas
kakou

avatar

Messages : 434
Département : 18

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Jeu 27 Avr 2017 - 22:21

@mariopourlavie oui je veux garder la cloche, pour taxi notamment, et je voulais savoir si c'etait possible de le faire dans modification de ma carte directement dans dof. j'avais pensé a connecter la cloche sur le knocker mais je trouvé pas ca très propre Smile (surtout que ma sonnette est en 220V, donc je l'ai isoler du reste avec un relay et son propre circuit)

Sinon je pense quand modifiant le fichier dofmachin.ini ca doit passer aussi
Revenir en haut Aller en bas
mariopourlavie
Modérateur
avatar

Messages : 1721
Département : 38

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Jeu 27 Avr 2017 - 22:32

rire  Moi je suis de la vieille école, mais si vous savez coder et programmer pour que vos arduino reconnaissent les commandes du DOF, moi je ne peux pas suivre  rire  Je ne pourrais le faire que comme la moutarde, à l'ancienne  lol!
Revenir en haut Aller en bas
kakou

avatar

Messages : 434
Département : 18

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Ven 28 Avr 2017 - 12:09

Sans entrée dans l'arduino, j'ai vu que quand tu configure DOF, tu télécharges les fichiers de config (.ini) de la ledwiz ... et dedans, tu as la listes des roms et les toys a utiliser en fonction de l'événement pour chaque table (c'est comme ca que j'ai trouvé les tables qui utilisent la sonnette). Donc je pensai directement modifier ce fichier en ajoutant la sonnette quand le knocker est utilisé Smile
Enfin c'est juste histoire de l'utiliser car sinon y'a que 10-15 tables ou elle est utile Smile
Revenir en haut Aller en bas
mariopourlavie
Modérateur
avatar

Messages : 1721
Département : 38

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Ven 28 Avr 2017 - 12:19

Ha ok  Alors je vais te suivre, car si tu y arrives, alors cela m'intéresse le comment faire, car j'ai des modifs perso que je voudrais faire 

Juste une précision, dans le dof config tool il y a un onglet "stats" pour savoir dasn quelles tables sont utilisés les toys 

Et sur L'onglet "Tables configs" tu peux aussi modifier supprimer / ajouter des éléments pour chaque table 
Revenir en haut Aller en bas
kakou

avatar

Messages : 434
Département : 18

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Ven 28 Avr 2017 - 13:33

Merci pour l'info sur les stats, ca m'évitera de farfouiller dans les fichiers la prochaine fois Smile
Revenir en haut Aller en bas
kakou

avatar

Messages : 434
Département : 18

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Ven 28 Avr 2017 - 21:47

J'en avais mare du bruit de mes ventilos ( il faudrait que j'en achète des vraiment silencieux)
En attendant :
 1 arduino nano + 1 carte relay 4 ports + 1 petit bout de code = les ventilos s'allument pendant 5 minutes quand la caisse dépasse les 25°

Ca fait déjà moins de bruit Smile
Revenir en haut Aller en bas
mariopourlavie
Modérateur
avatar

Messages : 1721
Département : 38

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Ven 28 Avr 2017 - 22:04



Comment ça marche ces arduinos ? Tu peux m'expliquer avec un schéma ? Parce que moi j'ai commandé des trics à l'ancienne  un thermostat mécanique  mais je trouverais sympa de pouvoir ajouter mon premier arduino et du code lol!
Revenir en haut Aller en bas
kakou

avatar

Messages : 434
Département : 18

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Ven 28 Avr 2017 - 22:39

Moi j'utilise 
- une arduino nano a 2.30€ Smile arduino nano
- une carte relay 4 ports pour pouvoir contrôler 4 ventilos 
- je peux aussi contrôler la vitesse des ventilos pour les ventilateurs 4 fils

Connecter la carte relay sur l'arduino : 
GND, 5V sur GND,5V de l'arduino
S1,S2,S3,S4 sur D4,D5,D6,D7 de l'arduino

Connecter un DHT22 (temperature/humidité) sur l'arduino
+ sur 5V de l'arduino
GND sur GND de l'arudino
DATA sur D2 de l'arduino

j'ai 1 ventilo 4 fils que j'ai connecté sur D3
Connecter sur les relay le +12V et le fil + des ventilos (1 par relay), et le - en direct sur la masse l'alim 

Voici le code actuelle ultra-simpliste que j'utilise, a envoyer sur la carte arduino connecté en USB au PC (via l'IDE arduino) :
Code:
#include <Adafruit_Sensor.h>
#include "DHT.h"
#define DHTPIN  2
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE); //déclaration du capteur

int pwmPin     = 3; // digital pin 3
int oldfanspeed = 0;

#define FAN1 4 // VENTILO CENTRAL (INJECTION)
#define FAN2 5 // VENTILO ARRIERE (EXTRACTION)
#define FAN3 6
#define FAN4 7

#define ON HIGH
#define OFF LOW

long previousMillis = 0;
long interval = 300000;

void setup()
{
        /* Initialisation du port série */
        Serial.begin(115200);
        dht.begin();
        // generate 25kHz PWM pulse rate on Pin 3
        pinMode(pwmPin, OUTPUT); // OCR2B sets duty cycle
        // Set up Fast PWM on Pin 3
        TCCR2A = 0x23; // COM2B1, WGM21, WGM20
        // Set prescaler
        TCCR2B = 0x0A; // WGM21, Prescaler = /8
        // Set TOP and initialize duty cycle to zero(0)
        OCR2A = 79; // TOP DO NOT CHANGE, SETS PWM PULSE RATE
        OCR2B = 0; // duty cycle for Pin 3 (0-79) generates 1 500nS pulse even when 0 :
        // Initialisation des ventilateurs
        setFanSpeed(0);
        setFanSpeed(79);
        setFanSpeed(0);

        //
        pinMode(FAN1, OUTPUT);
        pinMode(FAN2, OUTPUT);
        pinMode(FAN3, OUTPUT);
        pinMode(FAN4, OUTPUT);
        //
  /*
        for(int i=FAN1; i<=FAN4; i++) {
                digitalWrite(i,ON);   // Turns ON Relays 1
                delay(200);
        }
        delay(2000);
  */
        for(int i=FAN1; i<=FAN4; i++) {
                delay(200);
                digitalWrite(i,OFF); // Turns Relay Off
        }
}

/**
   speed vitesse (0-79)
 */
void setFanSpeed(int speed) {
        OCR2B = speed;
        delay(200);
}

void loop()
{
        /*        unsigned int x;
                // ramp up fan speed by increasing duty cycle every 200mS, takes 16 seconds
                for(x = 0; x < 80; x++) {
                        OCR2B = x; // set duty cycle
                        delay(200);
                }
         */

        // Lecture du taux d'humidité
        float h = dht.readHumidity();
        // Lecture de la température en Celcius
        float t = dht.readTemperature();
        // Stop le programme et renvoie un message d'erreur si le capteur ne renvoie aucune mesure
        if (isnan(h) || isnan(t)) {
                Serial.println("Echec de lecture !");
                return;
        }
        Serial.print("Humidite: ");
        Serial.print(h);
        Serial.print(" %\t");
        Serial.print("Temperature: ");
        Serial.print(t);
        Serial.println(" *C ");

        // FAN speed 25C=>0 40=>80
        float fanspeedt = ((t - 25)/15)*80;
        int fanspeed = (int)fanspeedt;
        if (fanspeed < 0)
                fanspeed = 0;
        if (fanspeed > 79)
                fanspeed = 79;
        if (oldfanspeed != fanspeed) {
                Serial.print("FAN SPEED : "); Serial.println(fanspeed);
                setFanSpeed(fanspeed);
                oldfanspeed = fanspeed;
        }

        unsigned long currentMillis = millis();

        if (t>25){
          previousMillis = currentMillis;
          for(int i=FAN1; i<=FAN4; i++) {
                  delay(200);
                  digitalWrite(i,ON); // Turns Relay Off
          }
        }

        if(currentMillis - previousMillis > interval) {
          for(int i=FAN1; i<=FAN4; i++) {
                  delay(200);
                  digitalWrite(i,OFF); // Turns Relay Off
          }
        }

        delay(10000);
}


Si ca intéresse, je peux faire un tuto et forunir un .hex tout pret a mettre sur l'arduino avec le contrôle, par exemple, d'au plus 6 ventilos et 6 ventilos a vitesse variable (4pins)

Pour la suite, je vais améliorer mon code en ajoutant : 
- allumer 1, puis 2, puis 3, puis 4, puis ... ventilos en fonction de la temperature
- faire sonner un buzzer en cas de temperature extreme
- des boutons pour forcer l'alumage/extinction des ventilos
- lire la vitesse du ventilo via le 3eme fils
- afficher les infos (vitesse, temperature, ...) sur un ecran  a 4€ ecran
Revenir en haut Aller en bas
mariopourlavie
Modérateur
avatar

Messages : 1721
Département : 38

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Ven 28 Avr 2017 - 22:44

  ha oui ça me plaît ça

Moi un tuto complet je veux bien. Ce serait un super plus pour nos pincab Very Happy Donc merci d'avance si tu veux te lancer .
Revenir en haut Aller en bas
kakou

avatar

Messages : 434
Département : 18

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Ven 28 Avr 2017 - 22:51

ok pas de soucis, je ferai un tuto complet Smile
Revenir en haut Aller en bas
sebx



Messages : 175
Département : 28

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Sam 29 Avr 2017 - 0:27

+1 intéressé 
Revenir en haut Aller en bas
kakou

avatar

Messages : 434
Département : 18

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Mer 3 Mai 2017 - 22:37

Ajout de 3 leds RGB dans les 3 coin-door avec combo DOF sur les flashers (Ca rends mieux sous PBFX2 DOFLinx) 
Revenir en haut Aller en bas
mariopourlavie
Modérateur
avatar

Messages : 1721
Département : 38

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Mer 3 Mai 2017 - 22:43

Re,

C'est une idée quelle bonne  bravo Very Happy
Revenir en haut Aller en bas
kakou

avatar

Messages : 434
Département : 18

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Mer 3 Mai 2017 - 22:59

Tu as la même porte zaccaria en plus Smile
Revenir en haut Aller en bas
kakou

avatar

Messages : 434
Département : 18

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Sam 6 Mai 2017 - 16:05

Ajout de quelques photos de ma WIP borne
Revenir en haut Aller en bas
kakou

avatar

Messages : 434
Département : 18

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Sam 13 Mai 2017 - 19:06

Debut de cablage du fronton :
- ajout des 2 haut-parleur pioneer recu, cablage (mais il me manque encore l'ampli)
- fixation de la carte pour le DMD (avec un cable HUB75 de 50cm, j'ai testé 1m, mais y'avais trop de perturbation)
- ajout d'une 3eme arduino mega-ledwiz pour controler ce qu'il y aura dans le fronton
- 1 carte avec 2 ULN, 1 carte avec 4 mosfet
- ajout des 2 gyrophare recu ce matin

Ce qui viendra ensuite :
- 2 ledstrip + 2 RGB pour les enceintes (a la @mariopourlavie)
- 1 ledstrip undercab (Vous mettez juste de bande ou vous faites le tour du bas du caisson ?)
- 1 ledstrip derriere-cab (surement combo flasher+undercab)

Revenir en haut Aller en bas
mariopourlavie
Modérateur
avatar

Messages : 1721
Département : 38

MessageSujet: Re: [WIP 96%] Mon premier pincab : transfomation zaccaria   Sam 13 Mai 2017 - 20:51

 Quand ça avance ça ne recul pas, c'est cool, beau travail.

Pour ce qui est de l'undercab, je pense que chacun fait à son goût Very Happy perso, j'ai fait le tour complet Wink
Revenir en haut Aller en bas
 
[WIP 96%] Mon premier pincab : transfomation zaccaria
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 4 sur 10Aller à la page : Précédent  1, 2, 3, 4, 5, 6, 7, 8, 9, 10  Suivant

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
 :: Pincab :: Pincab des membres-
Sauter vers: