[Programmation] Projet Porte d'Atlantis via arduino uno > picaxe 20M2
Répondre à la discussion
Affichage des résultats 1 à 26 sur 26

Projet Porte d'Atlantis via arduino uno > picaxe 20M2



  1. #1
    invitef6df6568

    Projet Porte d'Atlantis via arduino uno > picaxe 20M2


    ------

    Bonsoir, il y a près d'1 ans j'avais dans l'idée de réaliser la porte des étoiles de Stargate SG1. cette dernière à été fini grâce à ce forum. depuis le but de l'année j'expose la porte dans les salons ou l'association ou je suis se présente. Bref ça se passe très bien. J'ai malheureusement l'idée de faire l'autre porte, celle d'Atlantis toujours avec arduino uno sans moteur mais avec des leds et avec au moins quatre 74hc595N. quelqu'un pourrai t'il m'aider ? s'il vous plait..

    -----

  2. #2
    inviteb9a90acc

    Re : Projet Porte d'Atlantis via arduino uno

    Bonjour, ce serait bien de montrer où tu en es, tu ne trouves pas? A moins que tu n'es encore rien fait et que tu veuilles que ce soit nous qui te la faisons?

  3. #3
    antek

    Re : Projet Porte d'Atlantis via arduino uno

    C'est quoi, où, comment, pourquoi . . . une porte Atlantis ?

  4. #4
    mag1

    Re : Projet Porte d'Atlantis via arduino uno

    Bonjour,

    La "porte des étoiles" a été réalisée avec un picaxe 20M2.

    Ici, il est question d'arduino en C, que je ne connais pas. Il y a sur ce forum des forumeurs très compétents pour t'aider dans ce domaine...

    MM
    Dernière modification par mag1 ; 02/04/2017 à 11h27.
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  5. A voir en vidéo sur Futura
  6. #5
    Seb.26

    Re : Projet Porte d'Atlantis via arduino uno

    Si tu veux vraiment tout respecter ça va pas être coton !!!
    (tu as tous les symboles en image ? ... y'a peut être des recoupements à faire ...)
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  7. #6
    invitef6df6568

    Re : Projet Porte d'Atlantis via arduino uno

    Bonjour, oui, navré pas encore eu le temps de préparer ce que j'avais déjà, car en effet j'ai fait pas mal de recherche et j'ai du mal.
    j'avais bien trouver un tutoriel mais manque de précision, quand j'écris le code mot pour mot ça fonctionne pas comme mentionner,bref..

    20170402_113135[1].jpg

    20170402_113147[1].jpg

    https://youtu.be/o9uGXk5bzSI

    et j'essaie de faire ceci:

    http://eskimon.fr/269-arduino-annexe...rduino-74hc595 (chenillard 2)

    entre autre...

    le résultat à obtenir

    https://www.youtube.com/watch?v=P5qLKI7NXYQ

  8. #7
    invitef6df6568

    Re : Projet Porte d'Atlantis via arduino uno

    En fait j'ai la plupart des programmes je pense sauf l'autre sens (aller à droite, à gauche et bien sur s'arrête au chevrons. j'arrive pas à combiner le tout. j'ai du séparer les chevrons du reste de mon programme pour essayer de comprendre comment lancer le projet. Je pensais lancer le programme via une télécommande infra rouge ce qui serait le plus simple et que ça tournerai en boucle les chevrons resterai allumer pendant 10 min environ et la boucle reprendrait toute les 5 min environ. bref, c'est l'idée

    https://youtu.be/U_GEqI8qCuQ

    pour les symboles je sais comment faire. Si je parviens à réaliser le côté électronique je commencerai la porte en papier.

  9. #8
    Seb.26

    Re : Projet Porte d'Atlantis via arduino uno

    Citation Envoyé par destiny226 Voir le message
    En fait j'ai la plupart des programmes je pense sauf l'autre sens (aller à droite, à gauche et bien sur s'arrête au chevrons. j'arrive pas à combiner le tout. j'ai du séparer les chevrons du reste de mon programme pour essayer de comprendre comment lancer le projet. Je pensais lancer le programme via une télécommande infra rouge ce qui serait le plus simple et que ça tournerai en boucle les chevrons resterai allumer pendant 10 min environ et la boucle reprendrait toute les 5 min environ. bref, c'est l'idée

    https://youtu.be/U_GEqI8qCuQ

    pour les symboles je sais comment faire. Si je parviens à réaliser le côté électronique je commencerai la porte en papier.
    OK, donc tu pars sur une version "simplifiée" de la porte (tes symboles sont fixes).

    Sauf erreur de ma part, il te faut 36 LED indépendante.

    Tu peux prendre un uCPU et faire du multiplexage de LED, il te faut 6 + 6 = 12 I/O (avec 6 NPN)

    https://www.sonelec-musique.com/elec...tiplexage.html
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  10. #9
    invitef6df6568

    Re : Projet Porte d'Atlantis via arduino uno

    en effet il y a bien 36 leds. pour le peu que j'ai pu voir de la série les symbole de la porte son fixe. Je ne connais pas l'uCPU, et comment faire pour le multiplexage ? à moins d'utiliser le programme de ce principe pour ma porte sans l'objet qui s'allume.

    "Tu peux prendre un uCPU et faire du multiplexage de LED, il te faut 6 + 6 = 12 I/O (avec 6 NPN)"

  11. #10
    Seb.26

    Re : Projet Porte d'Atlantis via arduino uno

    uCPU = ta carte Arduino ... ... et tu peux même probablement oublier les NPN si tu es raisonnable sur le courant dans tes LED ...
    Dernière modification par Seb.26 ; 03/04/2017 à 20h12.
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  12. #11
    invitef6df6568

    Re : Projet Porte d'Atlantis via arduino uno

    je compte sur du 12 volt au mieux, comme pour ma première.

    Je pense que mes branchements son bon mais je sais pas aller plus loin, j'ai essayé ce que je pouvais sauf ce qui m à été proposé avec le multiplexage de LED. Est ce que le code multiplexage fonctionnera avec ce que j'ai fait ?

  13. #12
    mag1

    Re : Projet Porte d'Atlantis via arduino uno

    Citation Envoyé par destiny226 Voir le message
    je compte sur du 12 volt au mieux, comme pour ma première.

    Je pense que mes branchements son bon mais je sais pas aller plus loin, j'ai essayé ce que je pouvais sauf ce qui m à été proposé avec le multiplexage de LED. Est ce que le code multiplexage fonctionnera avec ce que j'ai fait ?
    Bonjour,

    Bon, alors, on en est où avec la porte d'atlantis ? La réponse à la question posée est non...

    A défaut d'arduino, je pense proposer une solution picaxe, ...comme pour la porte précédente.
    Je crois que la soluce avec 5 x 74HC595 (pour couvrir 36 glyphes) serait la meilleure, et un autre 74HC595 pour les chevrons.
    Je proposerai un schéma, j'attends des registres pour un petit essai.
    Mais cette fois, il va falloir apprendre à souder, avec de la vraie soudure pour électronicien.

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  14. #13
    invitef6df6568

    Re : Projet Porte d'Atlantis via arduino uno

    Merci Mag1, en effet Arduino et moi ça fait 2. et merci aussi pour le soutien de ceux qui on lu mon post !!

  15. #14
    mag1

    Re : Projet Porte d'Atlantis via arduino uno

    Citation Envoyé par destiny226 Voir le message
    Merci Mag1, en effet Arduino et moi ça fait 2. et merci aussi pour le soutien de ceux qui on lu mon post !!
    Bonjour,

    Mais non, le projet n'est pas abandonné...

    J'ai reçu une vingtaine de 74HC595 il y a quelques jours. Fallait faire quelques essais...et ça fonctionne.

    Voici déja le schéma, plutôt simple:

    Nom : atlantis.JPG
Affichages : 213
Taille : 144,0 Ko

    Je vais faire une petite vidéo du résultat, pour encourager notre origamiste...

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  16. #15
    mag1

    Re : Projet Porte d'Atlantis via arduino uno

    suite:

    une image de la porte d'atlantis:
    Avec la numérotation des glyphes

    Les 5 chevrons sont sélectionnés dans l'ordre 32 - 28 -24- 12 - 8 - 4 - 0

    Nom : atlantis.JPG
Affichages : 215
Taille : 112,5 Ko

    la vidéo:
    https://youtu.be/9Rwdz1b4Bo4

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  17. #16
    mag1

    Re : Projet Porte d'Atlantis via arduino uno

    Bonjour,

    Le code : Contrairement à l'annonce du titre, le µC employé est bien un picaxe 20M2, même si quelques commandes spécifiques à la série X2 auraient été pratiques, comme "shiftout" pour remplir les 5 registres des 74HC595 ou "DCD" pour positionner un bit dans un octet (DCD var,0 = %00000001).
    Et bien, on fait tout "à la main", et on économise 2,40 €.

    Principe de base (pas très élégant, peut être...). Deux compteurs:

    Un compteur de glyphe, de 0 à 35, circulaire, dans les deux sens, (on passe de 35 à 0 dans un sens et de 0 à 35 dans l'autre). Ce compteur pointe un glyphe, une division donne la position du bit à 1 (numérotés de 0 à 7) dans le registre (numérotés de 0 à 4) .
    Ex: pour éclairer le glyphe 28, on fait la division euclidienne de 28 par 8 : 28=reg x 8 + posbit, avec reg=3 et posbit=4.
    Le registre n°3 (reg3) s'écrit : %0010000 , les quatre autres registres sont à 0.
    Pour chaque pas: RAZ des registres, calcul de la position du bit à 1, chargement des registres et rafraichissement .

    Un compteur de pas, nombre de glyphes à éclairer pour aller d'un chevron à un autre.
    Chaque déplacement est défini par le sens et le nombre de pas.

    Code:
    ;atlantis36  MM 12/05/17
    #picaxe 20M2
    #no_data				;pas d'EEPROM à enregistrer
    symbol sens =bit0	;0=sens horaire : 1=sens antihoraire
    symbol mask=bit1	;masque registre à décalage
    symbol cptg=b1		;compteur de glyphes
    symbol reg0=b2		;registre 1er 74HC595
    symbol reg1=b3
    symbol reg2=b4
    symbol reg3=b5
    symbol reg4=b6		;registre 5ème 74HC595
    symbol nbit=b7		;position du bit 1 dans le registre
    symbol reg=b8		;position du 1 dans les 36 pos possibles
    symbol finrot=b9	;nombre de pas pour atteindre le glyphe suivant
    symbol pas=b10		;compteur de pas
    symbol chev=b11		;numéro du chevron à allumer
    symbol varb=b12		;variable locale
    symbol cpt=b13		;compteur
    symbol horlglyp= B.0		;port horloge glyphe
    symbol affglyp=	B.1		;port validation fin chargement
    symbol datglyp=	B.2		;port data glyphe 
    symbol horlchev= B.3
    symbol affchev=	B.4
    symbol datchev=	B.5 
    setfreq M32
    pullup %100000000000000
    
    ;***** programmes des rotations *****************	
    	reg0=0:reg1=0:reg2=0:reg3=0:reg4=0	;reset valeurs registres	
    	do
    		varb=reg0 :gosub glyphe
    		varb=reg1 :gosub glyphe
    		varb=reg2 :gosub glyphe
    		varb=reg3 :gosub glyphe
    		varb=reg4 :gosub glyphe	
    		pulsout affglyp,1	;affichage registres
    		chev=0			;chevrons éteints
    		gosub chevron	;affichage chevrons
    		do loop while pinC.6=1	;attente appui start
    		do loop while pinC.6=0	;attente relâchement
    		cptg=0			;glyphe départ, sous le chevron 7
    		chev=0			;chevrons éteints
    		gosub chevron	;affichage chevrons
    		sens=1			;sens rotation antihoraire
    		finrot=32		;nombre de pas = 32
    		gosub calbut	;glyp32	
    		chev =%1		;allume chev1
    		gosub chevron	;affichage chevrons	
    		sens=0
    		finrot=40
    		gosub calbut	;glyp28 
    		chev=%11		;allume chev 1 et 2
    		gosub chevron			
    		sens=1
    		finrot=32
    		gosub calbut	;glyp24
    		chev=%111
    		gosub chevron	
    		sens=0
    		finrot=48
    		gosub calbut	;glyp12
    		chev=%1111
    		gosub chevron	
    		sens=1
    		finrot=32
    		gosub calbut	;glyp8
    		chev=%11111
    		gosub chevron	
    		sens=0
    		finrot=40
    		gosub calbut	;glyp4
    		chev=%111111
    		gosub chevron	
    		sens=1
    		finrot=32
    		gosub calbut	;glyp0
    		chev=%1111111
    		gosub chevron
    		pause 10000		;c'est la fin...
    		reg0=0:reg1=0:reg2=0:reg3=0:reg4=0	;reset valeurs registres		
    	loop	
    calbut:			;calcul du but....bien sûr
    	pas=0		;RAZ pas (nombres de glyphes à allumer)
    	do		
    		reg0=0:reg1=0:reg2=0:reg3=0:reg4=0 ;RAZ des octets registres
    		if sens=1 then 			;gestion des 
    			inc cptg			;sauts au
    			if cptg>35 then		;passage à 
    				cptg=0			;zéro
    			endif		
    		else					;idem
    			dec cptg			;autre 	
    			if cptg>35 then		;sens
    				cptg=35
    			endif		
    		endif			
    		reg=cptg/8		;donne le 74HC595 concerné	
    		nbit=cptg//8	;donne la position du bit à 1 dans ce 74HC595	
    		select case reg	;positionnement du seul bit à 1 parmi 40 
    			case 0				;
    			varb=reg0: gosub posbit: reg0=varb
    			case 1
    			varb=reg1: gosub posbit: reg1=varb
    			case 2
    			varb=reg2: gosub posbit: reg2=varb
    			case 3
    			varb=reg3: gosub posbit: reg3=varb
    			case 4
    			varb=reg4: gosub posbit: reg4=varb
    		endselect		
    	varb=reg0 :gosub glyphe
    	varb=reg1 :gosub glyphe
    	varb=reg2 :gosub glyphe
    	varb=reg3 :gosub glyphe
    	varb=reg4 :gosub glyphe	
    	pulsout affglyp,1	;validation registres
    	pause 400			;vitesse défilement
    	inc pas	
    	loop while pas <finrot
    	return
    
    chevron:		;equivalent commande shiftout des X2
    	for cpt=1 to 8
    		mask=chev &1
    		low datchev
    		if mask=0 then saut
    		high datchev			
    saut:	pulsout horlchev,1
    		chev=chev/2
    	next cpt
    	pulsout affchev,1
    	pause 6000
    	return
    
    Glyphe:
    	for cpt=1 to 8
    		mask=varb &1
    		low datglyp
    		if mask=0 then saut2
    		high datglyp					
    saut2:	pulsout horlglyp,1
    		varb=varb/2
    	next cpt
    	return
    
    posbit:	;position du bit à 1 dans le registre (commande DCD des X2)
    	for cpt=0 to nbit
    		varb=varb*2 min 1
    	next
    	return
    MM
    Dernière modification par mag1 ; 13/05/2017 à 10h35.
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  18. #17
    mag1

    Re : Projet Porte d'Atlantis via arduino uno > picaxe 20M2

    Bonjour,

    Suite aux divers communications en MP, voici un nouveau schéma complet de l’électronique et une mise au point du code, avec recyclage toutes les 5 mn/

    atlantis complet.JPG

    Le code:

    Code:
    ;atlantis36  MM 26/05/17
    #picaxe 20M2
    #no_data			;pas d'EEPROM à enregistrer
    symbol sens =bit0	;0=sens horaire : 1=sens antihoraire
    symbol mask=bit1	;masque registre à décalage
    symbol cptg=b1		;compteur de glyphes
    symbol reg0=b2		;registre 1er 74HC595
    symbol reg1=b3
    symbol reg2=b4
    symbol reg3=b5
    symbol reg4=b6		;registre 5ème 74HC595
    symbol nbit=b7		;position du bit 1 dans le registre
    symbol reg=b8		;position du 1 dans les 36 pos possibles
    symbol finrot=b9	;nombre de pas pour atteindre le glyphe suivant
    symbol pas=b10		;compteur de pas
    symbol chev=b11		;numéro du chevron à allumer
    symbol varb=b12		;variable locale
    symbol cpt=b13		;compteur
    symbol horlglyp= B.0		;port horloge glyphe
    symbol affglyp=	B.1		;port validation fin chargement
    symbol datglyp=	B.2		;port data glyphe 
    symbol horlchev= B.3
    symbol affchev=	B.4
    symbol datchev=	B.5 
    symbol depart=pinC.6
    ;symbol attente= b14	;option réglage
    setfreq M32				;fréquence µC 32MHz
    pullup %100000000000000	;pullup sur C.6
    
    ;***** programmes des rotations *****************	
    	reg0=0:reg1=0:reg2=0:reg3=0:reg4=0	;reset valeurs registres	
    	do
    ;********** inialisation RAZ************		
    		varb=reg0 :gosub glyphe
    		varb=reg1 :gosub glyphe
    		varb=reg2 :gosub glyphe
    		varb=reg3 :gosub glyphe
    		varb=reg4 :gosub glyphe	
    		pulsout affglyp,1	;affichage registres
    		chev=0			;chevrons éteints
    		gosub chevron	;affichage chevrons
    ;*********** début cycles ************************	
    		time=0
    		do loop while depart=1 and time < 60	;attente appui start ou delay attente
    		do loop while depart=0	;attente relâchement
    		cptg=0			;glyphe départ, sous le chevron 7
    		chev=0			;chevrons éteints
    		gosub chevron	;affichage chevrons
    		sens=1			;sens rotation antihoraire
    		finrot=32		;nombre de pas = 32
    		gosub calbut	;glyp32	
    		chev =%1		;allume chev1
    		gosub chevron	;affichage chevrons	
    		sens=0
    		finrot=40
    		gosub calbut	;glyp28 
    		chev=%11		;allume chev 1 et 2
    		gosub chevron			
    		sens=1
    		finrot=32
    		gosub calbut	;glyp24
    		chev=%111
    		gosub chevron	
    		sens=0
    		finrot=48
    		gosub calbut	;glyp12
    		chev=%1111
    		gosub chevron	
    		sens=1
    		finrot=32
    		gosub calbut	;glyp8
    		chev=%11111
    		gosub chevron	
    		sens=0
    		finrot=40
    		gosub calbut	;glyp4
    		chev=%111111
    		gosub chevron	
    		sens=1
    		finrot=32
    		gosub calbut	;glyp0
    		chev=%1111111
    		gosub chevron
    		time=0
    		do loop while  depart = 1 and time < 300		
    		reg0=0:reg1=0:reg2=0:reg3=0:reg4=0	;reset valeurs registres		
    	loop	
    ;******************************************
    calbut:			;calcul du but....bien sûr
    	pas=0		;RAZ pas (nombres de glyphes à allumer)
    	do		
    		reg0=0:reg1=0:reg2=0:reg3=0:reg4=0 ;RAZ des octets registres
    		if sens=1 then 			;gestion des 
    			inc cptg			;sauts au
    			if cptg>35 then		;passage à 
    				cptg=0			;zéro
    			endif		
    		else					;idem
    			dec cptg			;autre 	
    			if cptg>35 then		;sens
    				cptg=35
    			endif		
    		endif			
    		reg=cptg/8		;donne le 74HC595 concerné	
    		nbit=cptg//8	;donne la position du bit à 1 dans ce 74HC595	
    		select case reg	;positionnement du seul bit à 1 parmi 40 
    			case 0				;
    			varb=reg0: gosub posbit: reg0=varb
    			case 1
    			varb=reg1: gosub posbit: reg1=varb
    			case 2
    			varb=reg2: gosub posbit: reg2=varb
    			case 3
    			varb=reg3: gosub posbit: reg3=varb
    			case 4
    			varb=reg4: gosub posbit: reg4=varb
    		endselect		
    	varb=reg0 :gosub glyphe
    	varb=reg1 :gosub glyphe
    	varb=reg2 :gosub glyphe
    	varb=reg3 :gosub glyphe
    	varb=reg4 :gosub glyphe	
    	pulsout affglyp,1	;validation des 5 registres
    	pause 400			;vitesse défilement chenillard
    	inc pas	
    	loop while pas <finrot		
    	return
    ;**************************************************
    chevron:		;equivalent commande shiftout des X2
    	for cpt=1 to 8
    		mask=chev &1
    		low datchev
    		if mask=0 then saut
    		high datchev			
    saut:	pulsout horlchev,1
    		chev=chev/2
    	next cpt
    	pulsout affchev,1
    	pause 6000		;pause sur allumage des chevrons
    	return
    ;******************************************************
    Glyphe:
    	for cpt=1 to 8
    		mask=varb &1
    		low datglyp
    		if mask=0 then saut2
    		high datglyp					
    saut2:	pulsout horlglyp,1
    		varb=varb/2
    	next cpt
    	return
    ;************************************************************
    posbit:	;position du bit à 1 dans le registre (commande DCD des X2)
    	for cpt=0 to nbit		;donne varb=%00000001 pour nbit=0
    		varb=varb*2 min 1	;   et varb=%00000010 pour nbil=1
    	next
    	return
    Détail du câblage des leds dans les chevrons et le glyphe au dessous (si j'ai bien vu la vidéo)

    alim leds atlantis.JPG

    La liste des courses sera en MP

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  19. #18
    mag1

    Re : Projet Porte d'Atlantis via arduino uno > picaxe 20M2

    Bonjour,

    Va falloir passer aux choses sérieuses et sortir le fer à souder et la soudure au plomb de 1 mm:

    Bref rappel de la "méthode TCI4"

    - On se fabrique une empreinte , pastilles rondes, bloc de 3 ou bande, pas de 1,27 (pour passer entre les pastilles)
    - On couvre la plaque avec cette empreinte
    - On dessine le "typon" en plaçant les composants en fonction des pastilles
    - Les pastilles utiles sont recouvertes d'une pastille carrée (soudures composants, points tournants, liaisons etc)
    - Les pistes sont cuivre sont repassées en rouge
    - les liaisons côté composants sont en vert, (entre les pastilles pour plus de lisibilité).

    Lorsque le travail est terminé, on sélectionne une pastille inutile, ronde, on sélectionne ainsi l'empreinte "pastilles", et suppres..
    Reste le typon à reproduire, qui sert de sérigraphie

    - On imprime ce dessin, et on le colle sur la plaque d'essais, en le positionnant avec des repères (pour les blocs de 3 surtout)
    - On perce le papier, on place les composants, les liaisons côté composants puis les liaisons côté cuivre

    Schéma d'implantation de la porte Atlantis:

    Nom : plaque atlantis.JPG
Affichages : 162
Taille : 410,5 Ko
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  20. #19
    mag1

    Re : Projet Porte d'Atlantis via arduino uno > picaxe 20M2

    Suite:

    Ce qui reste après suppression de la grille "empreinte":

    Nom : typon atlantis.JPG
Affichages : 168
Taille : 179,9 Ko

    Il est alors très simple de vérifier que les liaisons correspondent au schéma de principe, et de corriger les erreurs.

    Le cuivre est vu par transparence, mais pour la réalisation, TCI propose un typon en miroir pour visualiser le côté cuivre.

    J'ai ajouté une option "vitesse", au cas où...

    A la soudure Sébastien...

    MM
    Dernière modification par mag1 ; 28/05/2017 à 17h26.
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  21. #20
    mag1

    Re : Projet Porte d'Atlantis via arduino uno > picaxe 20M2

    Suite2

    Le fichier format .tci est en PJ

    Le total tient sur une plaque de 100 x 160, a recouper éventuellement.
    Reste de la place pour des options.

    Le type de connecteurs prévu, en 12 de large
    https://www.gotronic.fr/art-connecteur-s012-56.htm

    Des questions ?

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  22. #21
    mag1

    Re : Projet Porte d'Atlantis via arduino uno > picaxe 20M2

    Bon ben voilà la P.J.
    Fichiers attachés Fichiers attachés
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  23. #22
    mag1

    Re : Projet Porte d'Atlantis via arduino uno > picaxe 20M2

    Bonjour,

    Petite modif sur les connecteurs, y a pas de 13 broches...Donc, 3 de 12 et un de 10

    Liste des courses en PJ

    Les R étaient calculées pour des leds HL blanches ou bleues (Vf =3,5v 20mA) et des superflux bleues (Vf=3,5v 70mA)

    Le fil, au choix

    MM
    Fichiers attachés Fichiers attachés
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  24. #23
    mag1

    Re : Projet Porte d'Atlantis via arduino uno > picaxe 20M2

    Bonjour,

    Une petite modif avec 3 connecteurs 12 broches et un de 10.

    MM
    Fichiers attachés Fichiers attachés
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  25. #24
    mag1

    Re : Projet Porte d'Atlantis via arduino uno > picaxe 20M2

    Bonjour,

    Branchement un peu différent du potar, pour laisser de la place pour un DFPlayer...

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  26. #25
    mag1

    Re : Projet Porte d'Atlantis via arduino uno > picaxe 20M2

    Ne manque que la P.J.
    Fichiers attachés Fichiers attachés
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  27. #26
    mag1

    Re : Projet Porte d'Atlantis via arduino uno > picaxe 20M2

    Code modifié pour le potar vitesse

    Code:
    ;atlantis36  MM 26/05/17
    #picaxe 20M2
    #no_data			;pas d'EEPROM à enregistrer
    symbol sens =bit0	;0=sens horaire : 1=sens antihoraire
    symbol mask=bit1	;masque registre à décalage
    symbol cptg=b1		;compteur de glyphes
    symbol reg0=b2		;registre 1er 74HC595
    symbol reg1=b3
    symbol reg2=b4
    symbol reg3=b5
    symbol reg4=b6		;registre 5ème 74HC595
    symbol nbit=b7		;position du bit 1 dans le registre
    symbol reg=b8		;position du 1 dans les 36 pos possibles
    symbol finrot=b9	;nombre de pas pour atteindre le glyphe suivant
    symbol pas=b10		;compteur de pas
    symbol chev=b11		;numéro du chevron à allumer
    symbol varb=b12		;variable locale
    symbol cpt=b13		;compteur
    symbol horlglyp= B.0		;port horloge glyphe
    symbol affglyp=	B.1		;port validation fin chargement
    symbol datglyp=	B.2		;port data glyphe 
    symbol horlchev= B.3
    symbol affchev=	B.4
    symbol datchev=	B.5
    symbol potar= B.6 
    symbol depart=pinC.6
    symbol vitess= w13	;vitesse chenillard
    setfreq M32				;fréquence µC 32MHz
    pullup %100000000000000	;pullup sur C.6
    
    ;***** programmes des rotations *****************	
    	reg0=0:reg1=0:reg2=0:reg3=0:reg4=0	;reset valeurs registres	
    	do
    ;********** inialisation RAZ************		
    		varb=reg0 :gosub glyphe
    		varb=reg1 :gosub glyphe
    		varb=reg2 :gosub glyphe
    		varb=reg3 :gosub glyphe
    		varb=reg4 :gosub glyphe	
    		pulsout affglyp,1	;affichage registres
    		chev=0			;chevrons éteints
    		gosub chevron	;affichage chevrons
    ;*********** début cycles ************************	
    		time=0
    		do loop while depart=1 and time < 60	;attente appui start ou delay attente
    		do loop while depart=0	;attente relâchement
    		cptg=0			;glyphe départ, sous le chevron 7
    		chev=0			;chevrons éteints
    		gosub chevron	;affichage chevrons
    		sens=1			;sens rotation antihoraire
    		finrot=32		;nombre de pas = 32
    		gosub calbut	;glyp32	
    		chev =%1		;allume chev1
    		gosub chevron	;affichage chevrons	
    		sens=0
    		finrot=40
    		gosub calbut	;glyp28 
    		chev=%11		;allume chev 1 et 2
    		gosub chevron			
    		sens=1
    		finrot=32
    		gosub calbut	;glyp24
    		chev=%111
    		gosub chevron	
    		sens=0
    		finrot=48
    		gosub calbut	;glyp12
    		chev=%1111
    		gosub chevron	
    		sens=1
    		finrot=32
    		gosub calbut	;glyp8
    		chev=%11111
    		gosub chevron	
    		sens=0
    		finrot=40
    		gosub calbut	;glyp4
    		chev=%111111
    		gosub chevron	
    		sens=1
    		finrot=32
    		gosub calbut	;glyp0
    		chev=%1111111
    		gosub chevron
    		time=0
    		do loop while  depart = 1 and time < 300		
    		reg0=0:reg1=0:reg2=0:reg3=0:reg4=0	;reset valeurs registres		
    	loop	
    ;******************************************
    calbut:			;calcul du but....bien sûr
    	pas=0		;RAZ pas (nombres de glyphes à allumer)
    	do		
    		reg0=0:reg1=0:reg2=0:reg3=0:reg4=0 ;RAZ des octets registres
    		if sens=1 then 			;gestion des 
    			inc cptg			;sauts au
    			if cptg>35 then		;passage à 
    				cptg=0			;zéro
    			endif		
    		else					;idem
    			dec cptg			;autre 	
    			if cptg>35 then		;sens
    				cptg=35
    			endif		
    		endif			
    		reg=cptg/8		;donne le 74HC595 concerné	
    		nbit=cptg//8	;donne la position du bit à 1 dans ce 74HC595	
    		select case reg	;positionnement du seul bit à 1 parmi 40 
    			case 0				;
    			varb=reg0: gosub posbit: reg0=varb
    			case 1
    			varb=reg1: gosub posbit: reg1=varb
    			case 2
    			varb=reg2: gosub posbit: reg2=varb
    			case 3
    			varb=reg3: gosub posbit: reg3=varb
    			case 4
    			varb=reg4: gosub posbit: reg4=varb
    		endselect		
    	varb=reg0 :gosub glyphe
    	varb=reg1 :gosub glyphe
    	varb=reg2 :gosub glyphe
    	varb=reg3 :gosub glyphe
    	varb=reg4 :gosub glyphe	
    	pulsout affglyp,1	;validation des 5 registres
    	readadc10 potar,vitess
    	vitess= 1023-vitess	;pour une vitesse croissante (bof)
    	pause vitess			;vitesse défilement chenillard
    	inc pas	
    	loop while pas <finrot		
    	return
    ;**************************************************
    chevron:		;equivalent commande shiftout des X2
    	for cpt=1 to 8
    		mask=chev &1
    		low datchev
    		if mask=0 then saut
    		high datchev			
    saut:	pulsout horlchev,1
    		chev=chev/2
    	next cpt
    	pulsout affchev,1
    	pause 6000		;pause sur allumage des chevrons
    	return
    ;******************************************************
    Glyphe:
    	for cpt=1 to 8
    		mask=varb &1
    		low datglyp
    		if mask=0 then saut2
    		high datglyp					
    saut2:	pulsout horlglyp,1
    		varb=varb/2
    	next cpt
    	return
    ;************************************************************
    posbit:	;position du bit à 1 dans le registre (commande DCD des X2)
    	for cpt=0 to nbit		;donne varb=%00000001 pour nbit=0
    		varb=varb*2 min 1	;   et varb=%00000010 pour nbil=1
    	next
    	return
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

Discussions similaires

  1. Projet Arduino
    Par invite1283ea30 dans le forum Électronique
    Réponses: 11
    Dernier message: 19/06/2015, 17h21
  2. affichage pour Picaxe 20M2
    Par invite4dc251eb dans le forum Électronique
    Réponses: 36
    Dernier message: 29/08/2014, 09h52
  3. Code infrarouge Sony sur Picaxe et Arduino inversé !
    Par invite3a1051d7 dans le forum Électronique
    Réponses: 0
    Dernier message: 02/08/2014, 22h02
  4. Aide projet porte automatique avec PICAXE
    Par jcchud dans le forum Électronique
    Réponses: 299
    Dernier message: 02/04/2013, 19h46
  5. picaxe ou arduino ??
    Par invite124b1c05 dans le forum Électronique
    Réponses: 14
    Dernier message: 30/11/2012, 18h26
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...