Aller au contenu


Alex68

Inscrit(e) (le) 16 févr. 2010
Déconnecté Dernière activité juin 16 2014 03:43
-----

Messages que j'ai postés

Dans le sujet : "Classique" robot détecteur d'obstacle

12 mars 2011 - 06:22

En fait mes accus 9V doivent être assez pourris parce qu'en pleine charge, on a 8.8V à ses bornes mais dès qu'on les branche au robot et qu'on le met sous tension la tension à leurs bornes chute vers 7,3V...donc la régulation à 5V tient pas longtemps...

Dans le sujet : "Classique" robot détecteur d'obstacle

08 mars 2011 - 06:47

Salut,
Voici deux photos de la bête :

http://img191.imageshack.us/i/dsc00346cp.jpg/

http://img156.imageshack.us/i/dsc00347x.jpg/

Dans le sujet : "Classique" robot détecteur d'obstacle

01 mars 2011 - 05:49

Salut,

Moins d'une semaine avant la fin du TPE, j'ai le plaisir de vous annoncer que mon premier robot est enfin terminé après des heures et des heures de tests et de bidouille. Dommage que je n'ai pas posté l'avancement du robot au fur et à mesure. Merci à Néo, Yoda et Eihis pour m'avoir aiguillé.

Voici donc ses caractéristiques finales :
-2 LED IR à deux niveaux de puissance + Tsop pour une détection à distance (distance réglable en changeant la fréquence émise par un NE555)
-2 micro-rupteurs + "antennes" à l'avant + deux autres sur les côtés (s'il se prend un mur en biais)
-2 CNY70 qui font office de capteurs de vide + un dont la led est cramé pour définir le seuil de détection avec la lumière infrarouge ambiante
-2 moto-réducteurs (dont la vitesse est ajustable avec un NE555) + L293D (qui chauffe un peu mais tant que je peux poser mon doit dessus...ça doit être bon ?)
-le tout orchestré par un PIC 16F88 programmé avec Flowcode. Les contacts et vides sont gérés par une interruption et les signaux venant du Tsop, par des conditions. Il y a aussi un système permettant au robot de ne pas se retrouver bloqué dans un coin (de table ou d'un mur) : plus les détections sont rapprochées, plus la rotation est importante (ça fonctionne assez bien).
-l'électronique est alimenté par deux accus 9V régulés à 5V (je vais changer le 7805 par un "low drop-out" pour améliorer l'autonomie) et les moteurs, 6 accus AA (environ 7.5V)
-le châssis et les roues sont en plexi

Cette première expérience en robotique m'a pris énormément de temps mais a été très enrichissante. N'hésitez pas si vous avez des questions ou des conseils. Je vous posterai une photo quand je pourrai.

Dans le sujet : HELP première programmation

14 décembre 2010 - 11:00

Yahou ! J'ai réussi à faire clignoter ma LED ! (sans le bootloader) Merci encore. Par contre le programmation ne fonctionne pas tout le temps...peut-être à cause de faux contacts. Je n'arrive pas non plus à utiliser le PWM...je réessayerai demain.

salut !

Tu cherches a faire clignoter un led sur le port A , bit 0 :P
..ca doit marcher sur le papier,et vu le code ( meme s'il est sacrement étrange et peu optimisé ).


C'est juste un test.
Pour le code, je ne l'ai pas fait moi-même, j'ai fait un organigramme que Flowcode a traduit. Je m'intéresserai au C quand j'aurai plus de temps.

Dans le sujet : HELP première programmation

13 décembre 2010 - 11:42

Salut,
Merci encore !
J'ai téléchargé le logiciel allant avec le Tinybootloader, mais il ne reconnaît pas le PIC.
Je vais donc essayer sans. Je fais mon programme avec Flowcode. Quand je compile l'organigramme, j'obtiens d'abord le fichier C

//************************************************************************************
//**
//** File name: C:\Documents and Settings\Standard\Mes documents\Flowcode1.c
//** Generated by: Flowcode v4.3.7.63
//** Date: Monday, December 13, 2010 23:12:41
//** Licence: Demo
//**
//** ***DEMO VERSION***
//**
//**
//** POUR UN USAGE NON COMMERCIAL
//**
//** http://www.matrixmultimedia.com
//************************************************************************************


#define MX_PIC

//Définir pour microcontrôleur
#define P16F88
#define MX_EE
#define MX_EE_TYPE2
#define MX_EE_SIZE 256
#define MX_SPI
#define MX_SPI_B
#define MX_SPI_SDI 1
#define MX_SPI_SDO 2
#define MX_SPI_SCK 4
#define MX_UART
#define MX_UART_B
#define MX_UART_TX 5
#define MX_UART_RX 2
#define MX_I2C
#define MX_I2C_B
#define MX_I2C_SDA 1
#define MX_I2C_SCL 4
#define MX_PWM
#define MX_PWM_CNT 1
#define MX_PWM_TRIS1 trisb
#define MX_PWM_1 0
#define MX_PWM_TRIS1a trisb
#define MX_PWM_1a 3

//Fonctions
#define MX_CLK_SPEED 20000000
#ifdef _BOOSTC
#include <system.h>
#endif
#ifdef HI_TECH_C
#include <pic.h>
#endif

//Données de Configuration
#ifdef _BOOSTC
#pragma DATA 0x2007, 0x2f2a
#endif
#ifdef HI_TECH_C
__CONFIG(0x2f2a);
#endif
#ifdef _BOOSTC
#pragma DATA 0x2008, 0x3ffc
#endif
#ifdef HI_TECH_C
__CONFIG(0x3ffc);
#endif

//Fonctions internes
#include "C:\Program Files\Matrix Multimedia\Flowcode V4\FCD\internals.h"

//Déclarations de fonction Macro


//Déclarations de Variable



//Implémentations Macro

void main()
{

//Initialisation
ansel = 0;
cmcon = 0x07;


//Code d'initialisation d'Interruption
option_reg = 0xC0;


//Boucle
//Boucle: Tant que 1
while (1)
{
//Sortie
//Sortie: 0 -> A0
trisa = trisa & 0xfe;
if (0)
porta = (porta & 0xfe) | 0x01;
else
porta = porta & 0xfe;


//Pause
//Pause: 200 ms
delay_ms(200);


//Sortie
//Sortie: 1 -> A0
trisa = trisa & 0xfe;
if (1)
porta = (porta & 0xfe) | 0x01;
else
porta = porta & 0xfe;


//Pause
//Pause: 200 ms
delay_ms(200);


}


mainendloop: goto mainendloop;
}

void MX_INTERRUPT_MACRO(void)
{
}


Ensuite j'obtiens le fichier HEX et un message avec :

Warning unreferenced functions removed:

FCI_FLOAT_TO_STRING in: C:\Program Files\Matrix Multimedia\Flowcode V4\FCD\internals.h

FCI_NUMBER_TO_HEX in: C:\Program Files\Matrix Multimedia\Flowcode V4\FCD\internals.h

FCI_STRING_TO_INT in: C:\Program Files\Matrix Multimedia\Flowcode V4\FCD\internals.h

FCI_STRING_TO_FLOAT in: C:\Program Files\Matrix Multimedia\Flowcode V4\FCD\internals.h

Wdt_msDelay in: C:\Program Files\Matrix Multimedia\Flowcode V4\FCD\internals.h

Wdt_Delay_S in: C:\Program Files\Matrix Multimedia\Flowcode V4\FCD\internals.h

Wdt_Delay_Ms in: C:\Program Files\Matrix Multimedia\Flowcode V4\FCD\internals.h

isinf in: C:\Program Files\Matrix Multimedia\Flowcode V4\FCD\internals.h


Le programme est-il viable ?