Gestion électronique - y'a quoi dans la boîte noire ?

Venez discuter de vos ennuis, et donnez vos solutions !

Modérateurs : fandemapolo, oof-will, lozoic, dj flex, Arsene, TriPolo

Répondre
Avatar du membre
TriPolo
Doc Tripot lolos !
Messages : 5945
Enregistré le : 10 juil. 06 18:54
Localisation : Bas des rhins Prénom : Yanntoche

Message par TriPolo »

En quelque sorte, en s'inspirant un minimum de l'existant pour avoir une idée des réglages de base :wink:

Un peu de vulgarisation pour nos amis non-électroniciens qui suivent ce topic :D :

- L'ARM7TDMI est un coeur de processeur que vous utilisez tous sans le savoir. La société ARM est une boîte qui fait de la conception de circuits uniquement, mais elle ne les fabrique pas. Un bureau d'études en quelque sorte qui vend ses productions à d'autres qui eux, font un mix avec leurs propres porduits et assurent la fabrication des puces. Il y a de nombreuses variantes d'ARM, et notamment vous trouverez un bidule comme ça dans chaque téléphone mobile, PDA, GPS, lecteur MP3, etc ...

La famille de puces philips LPC2000 utilise ce coeur. Les processeurs peuvent fonctionner à 60 MHz :shock: (à comparer avec les pauvres 1 MHz des 6803 du digifant de l'époque). Ils font des calculs sur 32 bits (8 bits dans le digifant)

- La mémoire flash est une mémoire intégrée au processeur qui se télécharge. Pas besoin de changer de puce pour modifier le programme ou les réglages du moteur. Il suffit de faire les modifs sur son PC, de brancher un câble sur le calculo et on télécharge la mise à jour :D. Sur les LPC2000, les tailles de mémoire vont jusqu'à 512K (8K sur les digifant type II et 32K sur les type III)

- Le FT232 est un circuit intégré spécial. Dans des PC anciens, on avait une liaison série (les premières souris étaient branchées dessus). C'était un connecteur qui ressemble à une prise VGA (celle de l'écran) mais avec 9 pattes au lieu de 15. Les liaisons série ont pratiquement disparu sur les PC récents. Or, le téléchargement des puces se fait encore souvent par cette interface. Le FT232 est une "passerelle" qui transforme une ligne série en port USB, disponible partout. Concrètement, grâce à ce composant, il est possible de télécharger un calculo à partir d'un PC portable avec un câble USB ordinaire :D

- GCC est un compilateur gratuit. C'est celui qui sert pour linux. Un compilateur permet de transformer un logiciel écrit dans un langage standard puissant (le langage C par exemple) en code binaire (parfois appelé improprement "assembleur") adapté au processeur. On peut voir ça comme une sorte de traducteur.

- Eclipse est un logiciel de conception pour écrire et tester des programmes en Java. Le plug-in CDT est une extension qui permet d'utiliser Eclipse pour écrire du C. Le C est beaucoup plus adapté pour écrire du logiciel de bagnole, et notamment pour la gestion moteur ;-)

- Un "wiggler" est un petit boîtier qu'on branche sur le microprocesseur du calculo et qui permet de voir ce qui se passe à l'intérieur pendant que le programme tourne. C'est un outil de test en fait, une sorte d'instrument de mesure. On s'en sert pour débugger. Le wiggler utilise une interface spéciale normalisée qui s'appelle le JTAG. On peut alors visualiser sur un PC portable ce qui se passe à l'intérieur du calculo :shock:

Voilà ... voilou :wink:
Tous les chemins mènent au Rhum !
Avatar du membre
Alex_le_surfer
Polo fan
Messages : 1104
Enregistré le : 11 août 05 19:21
Localisation : Bordeaux

Message par Alex_le_surfer »

il est bon ce Tripolo quand même :ave: respect :fume:
VW forever ;-)
Avatar du membre
fandemapolo
Détordeur de Polo ! Modérateur
Messages : 13052
Enregistré le : 11 août 05 17:26
Localisation : 45 Orléans

Message par fandemapolo »

:shock: :ave:
Polo G40 1988 206000 kms / Seat Ibiza SDI 2000 358000 kms / Audi A6 1.9Tdi 130 2002 295000 kms
Avatar du membre
Flayer95
Polo lover
Messages : 749
Enregistré le : 03 nov. 05 11:12
Localisation : 95

Message par Flayer95 »

Professeur tripolo 8)
duke
Messages : 15
Enregistré le : 21 juin 07 10:52

Message par duke »

Moi perso je serai plutôt pour un PIC de la série 18 ou alors un dsPIC si on veut un truc bien puissant et évolutif.
JB
Polo driver
Messages : 80
Enregistré le : 11 juin 07 16:02

Message par JB »

On pourrait développer plusieurs architectures hard avec differentes applications, par exemple pic pour pour un programme a faible complexité et faible ressources CPU, et le phillips pour un gros calculo avec cartes filles modulaires suivant les protos/prepa...ca prendra plus de temps a developper mais vu que tripolo maitrise le phillips et nous le pic et que tout sera programmé en C il n'y aura quasiment que le hardware qui changera. Enfin c'est une idée maintenant on peut presque tout faire :wink:

Par contre GCC c une bonne idée niveau fiabilité ca doit etre costaud
Avatar du membre
TriPolo
Doc Tripot lolos !
Messages : 5945
Enregistré le : 10 juil. 06 18:54
Localisation : Bas des rhins Prénom : Yanntoche

Message par TriPolo »

J'ai tout ce qu'il faut pour développer aussi sur PIC (emulateur ICD2, compilateur ...)

Le problème du 18F, c'est qu'on reste en 8 bits et les calculs vont faire souffrir le micro. Les capacités mémoires sont un peu limites aussi (notamment la RAM). C'est sûr que c'est du même ordre de grandeur que le digifant d'origine, mais je crains qu'on soit rapidement limité pour les évolutions. Je sais pas si le compilo est payant ou pas. Il me semble qu'il doit y avoir une version gratos qu'on peut télécharger sur le site de microchip.

Le dsPIC est mieux placé (16 bits) mais demandera quand même un peu plus d'attention pour les calculs en virgule fixe (notamment les mises à l'échelle) qu'un 32 bits.

Un autre point important à voir, c'est le nombre et la structure des périphériques qui vont devoir générer des impulsions (injection, allumage ...), mesurer des fréquences (capteur hall ...), etc ... Ces opérations consomment de la puissance de calcul et nécessitent des traitements sous interruptions qui réduisent la puissance de calcul disponible pour le reste. J'avais même envisagé de faire un chip sur mesure pour ces traitements en utilisant un FPGA genre Altera Cyclone (même raison, les outils de développement - Quartus - existent en version gratuite et j'ai l'outil de téléchargement, de même que des composants :D)

A voir tout ça. Ce qu'il y a aussi, c'est que j'ai déjà beaucoup de code ARM pour les drivers d'E/S qu'il faudra réécrire pour PIC.
Tous les chemins mènent au Rhum !
JB
Polo driver
Messages : 80
Enregistré le : 11 juin 07 16:02

Message par JB »

Nan c'est vrai le 32 bits permettrais d'etre plus efficace au niveau du compilateur, les calculs en virgule flottante seront simplifiés donc moins de temps CPU.

Pour le FPGA chui partant mais je n'en ai jamais touché, j'ai fait un peu de CPLD sur un MAX7000 de Altera mais le FPGA... je regarde pour une carte de dev Xilinx pas trop chere. Je ne sais pas à combien sont les chip FPGA Altera mais les CPLD ne sont pas vraiments donnés (enfin les prix ont peut etre changé depuis le temps).

Si tu peux avoir des cartes de dev a pris d'amis avec le boulot je suis intéressé :D
JB
Polo driver
Messages : 80
Enregistré le : 11 juin 07 16:02

Message par JB »

A la limite on pourrait meme faire une architecture multi µP: chaque carte fille possede son propre microcontrolleur et ne transmet a la carte mere que les resultats de ses taches via un bus de donnée type SPI ou CAN... c'est ce qu'on a essayé de développer pour la coupe de france de robotique (PC104 avec Debian, dsPIC en interface et 18F452 sur chaque carte fille)...sur le papier c'est génial mais demande enormement de temps de developpement; par contre on ne peut pas faire plus flexible une fois que ca fonctionne ^^
Avatar du membre
Flo49
Drogué
Messages : 4650
Enregistré le : 12 août 05 09:56
Localisation : 49 - Segré
Contact :

Message par Flo49 »

Moi je vous met un automate programmable là dedans au moins j'arriverais à le programmer :lol: .
ImageImage
Avatar du membre
PoluX
Fred de Nice !
Messages : 1960
Enregistré le : 26 mars 06 16:47
Localisation : Aube - 10

Message par PoluX »

euh tripolo , tu serais pas en train de fabriquer un convecteur temporel dans ton monster garage ? :lol: :roll:

aaaaaaaahhhhhhhhh j'ai trouvé à quoi allait servir la polo d'orléans lol !! :D
Image
Avatar du membre
TriPolo
Doc Tripot lolos !
Messages : 5945
Enregistré le : 10 juil. 06 18:54
Localisation : Bas des rhins Prénom : Yanntoche

Message par TriPolo »

polux_g40 a écrit :euh tripolo , tu serais pas en train de fabriquer un convecteur temporel dans ton monster garage ? :lol: :roll:

aaaaaaaahhhhhhhhh j'ai trouvé à quoi allait servir la polo d'orléans lol !! :D
Non ... de Zeus ! :lol: Ca y est, je me souviens ! L'autre jour je me suis cogné contre le réservoir des chiottes, et là ! ... J'ai eu une vision :shock: :ptdr: ... alors autant faire une machine à voyager dans le temps qui ait de la gueule ... Une polorean :lol: :ptdr:

Plein d'idées là :D

Travailler plusieurs plate-formes, c'est pas mal du tout. A nous de trouver la bonne architecture de soft pour rendre l'applicatif portable, indépendant du compilateur et du matériel (il nous faut une bonne couche HAL - Hardware Abstraction Layer et se forcer à respecter stricto senso la norme du C ANSI).

Une plate-forme de base à prix minimum serait une soluce de remplacement très sympa pour améliorer des polos de base. Quand les calculos d'allumage de GK seront introuvables, ça prendra tout son sens !!

D'ailleurs, ça pourrait servir de système de base qu'on peut étendre après. Suffit de prévoir un bus CAN. Un 18F458 par exemple (j'en ai un ou deux). Le seul piège est de ne pas dispatcher la gestion angulaire entre plusieurs calculos, là ça devient ingérable. Par exemple, la commande des bobines d'allumage et des injecteurs doit être confié au même calculo, sinon prise de chou :?

Pour le FPGA, tout dépend ce qu'on appelle cher. Altera vend ses chips on-line. Un EP1C3T100 se trouve à un peu plus de 10$, ce qui me paraît très abordable. Il faut compter en + une Flash de chargement qui contient la config (et pour quelques dollars de plus :D). A moins de 20$ on s'en tire pour cette partie. Le VHDL c'est cool ;-)

Pour les calculs, même sans se lancer dans de la virgule flottante, la virgule fixe correctement mise à l'échelle est redoutablement efficace en 32 bits. Par exemple, le code open source de MAD (un décodeur MP3) tourne en virgule fixe sur 32 bits et passe mieux certains tests que d'autres codes écrit en virgule flottante :shock: . La mise à l'échelle demande un peu de boulot mais il existe des outils automatiques pour ça. On pourra en reparler :wink:
Tous les chemins mènent au Rhum !
Avatar du membre
Polo GT MAN
My other car is a BX !
Messages : 3142
Enregistré le : 28 sept. 05 22:11
Localisation : Langon,Gironde (33)

Message par Polo GT MAN »

pfffffffff j'comprend vraiment rien, ca parle de 32bits et tout et tout, pffffffff ca fait pas tout, moi j'en ai qu'une et ca suffit... :lol:


je sort ok :arrow:
Caisses actuelle : Seat Leon FR 1.4 TSi 150 / Peugeot 306 TurboFioul / Peugeot Boxer 2.5D / Audi A4 (b6) 3.0 V6 Quattro
(Ne)Recherche(Plus de)G40 désespérément
GhostRider
High Mileage HZ
Messages : 2422
Enregistré le : 21 déc. 05 15:05

Message par GhostRider »

Bon, je crois qu'on peut ouvrir une nouvelle section "Electronique, Informatique et calculateurs" :D
O===w===O

HZ - 1043cc - 45cv : 364.500Kms !!! ~ 7L / 100 Kms

[ ][ ] |+| [ ][ ]
L98 - 5735cc - 230cv : 105.000 Kms De 11 à 30L / 100 Kms :lol:
duke
Messages : 15
Enregistré le : 21 juin 07 10:52

Message par duke »

Pour ce qui est des FPGA c'est sûr que c'est la solution ultime, on pourra pas trouver mieux en terme de rapidité et de latence, un pote avait développé une carte graphique avec gestion d'une souris sur un ALTERA et j'dois dire que c'est assez impressionnant à voir, le programme aussi ^^. L'avantage que cette architecture c'est qu'on peut faire fabriquer les chips définitifs par un fondeur (différence de prix non négligeable même pour de la petite série).
Pour ma part à la base j'imaginais plutôt construire un "clône" du digifant sur un PIC et déjà faire tourner une polo avec ca :lol:. Une fois que ca c'est fait, le reste ce n'est que temps et imagination...
Pour les PIC je pense pas qu'ils soit tant limite que ca niveau ressources, ils possèdent de nombreux modules hardware qui soulage grandement le CPU. Par exemple dans le HC11, pour le capteur HALL j'ai vu que c'est une entrée CAPTURE hardware qui est utilisée, comme ca il n'y a plus qu'à aller chercher la valeur du TIMER untel (qui s'est automatiquement arrêté soit dit en passant) lors de l'interruption. Les PIC possèdent ce genre d'entrées également. De même, c'est déjà moins utile mais tout aussi important, le WATCHDOG TIMER est externe sur le HC11 alors qu'il est intégré sur le PIC.
Bref je ne dis pas que le PIC est la solution miracle, loin de moi cette idée, mais je pense que si on développe un soft totalement ANSI sur PIC (hormis un driver à réécrire pour chaque architecture ; la fameuse couche HAL peut-être ?), il sera très facile ensuite d'adapter pour d'autres chips. Je pars du principe que si un 8bits est capable de le faire, un 16 ou 32 le sera aussi, mais pas forcément le contraire...

Voili voilou.
Répondre