Problème : le programmateur n'est pas détecté en USB. Un erreur est détectée ce qui montre qu'il y a une connexion, mais n'apparaît pas dans lsusb.
Programmable : La connexion en ISP en revanche fonctionne. On pourra donc programmer les leds et les boutons avec une UNO. Voir dans le futur si on peut fixer le problème de l'USB pour rendre le programmateur fonctionnel.
ajout d'un premier blink_led.c (brouillon) au git
TESTS : Le code blink fonctionne mais pas le code boutons -> faut contact / pbs de soudure sur les pattes
11/03
LEDS et boutons fonctionnent -> programme pour connexion port série.
Structure avec matériel (y compris production - gerber, bill of materials) / logiciel / documentation (e.g. documentation technique).
Description du système embarqué
Nous avons décider de réaliser BMO, un système comportant un écran affichant un visage minimaliste, munis d'un détécteur de mouvement et d'un buzzer.
Lorsque notre main s'approche de détécteur, le visage plisse les yeux (ou devient triste). Lorsque notre main s'écarte de celui ci, le visage réouvre les yeux (ou devient heureux).
Le système sera alimenté par une batterie, ou une alimentation USB en 5V.
Afin de valider l'utilisation du port USB, nous connecterons un ordinateur au système via USB et éffectuerons un transfert de données sonores (divers sons) qu'on ira stocker dans la flash.
On a ajouté 2 servos moteurs pour faire office de bras. On pourra s'en servir pour proposer plus d'interactions.
Historique des Scéances
S1 (17/02/26):
Modification initiale du wikicode
Brainstorming pour se décider sur un projet
S2 (03/03/26): Début de la schématique
Encodeur: voir si on peut en utiliser un pour régler le son/luminosité écran.
Connecteur ISP (le même que le programatteur)
USB-A, condensateurs de découplage, condensateur VUSB.
Chargeur Lipo (le même que celui du wiki donc à modifier selon notre schéma).
haut parleur : 8 entrée DAC.
Ecran : 11 entrée (8 affichage et 3 gestion).
Cerveaux moteur optionnels si on a pas assez de ports
Correction de la V1, et ajout des connecteurs pour le chargement de la batterie/ choix de l'alimentation / connecteur batterie
Routage : début, du placement des composants.
A FAIRE:
Demander les composants physique tel que le buzzer et le cerveau moteur
On a enlevé des pins sur l'AVR qui étaient pris inutilement par la batterie LIPO => voir si on ne peut pas rajouter un cerveau moteur et des boutons à la place.
Tension : Analyser les composants qui nécéssitent 5V de tension pour ajouter un booster de tension pour garder le 5V en batterie (3,3V). Inversement mettre un régulateur de tension sur les composants fonctionnant en 3,3V, lors de l'alimentation en 5v. Convertisseur : TPS61033-Q1
(29/03/26):Ajout du TPS61033-Q1
Ajout du booster de tension TPS61033-Q1 pour l'écran et le buzzer.
Pour alimenter la logique (écran LCD, capteurs) et surtout les servomoteurs depuis la batterie de 3.3V, le choix s'est porté sur le régulateur boost TPS61033-Q1. Ce composant est configuré de manière à minimiser la nomenclature matérielle et le routage : la broche FB est reliée directement à l'entrée (VIN) pour fixer la tension de sortie à 5.0V en interne, rendant inutile l'usage d'un pont diviseur. La broche EN est maintenue à VIN pour un fonctionnement continu , tandis que la broche MODE est à la masse (GND) pour activer le mode Auto PFM. Ce mode garantit un excellent rendement énergétique à faible charge, ce qui est crucial pour économiser la batterie lorsque les moteurs sont à l'arrêt. Pour gérer la décharge lors de l'extinction, une résistance de 1kΩ (Rdummy) est placée sur la broche PG. Cela tire seulement 5mA (bien en deçà de la limite de 50mA imposée par le transistor à drain ouvert ) et assure une chute de tension propre et rapide en un quart de seconde.
Côté puissance, les servomoteurs SG90 imposent des pics de courant importants (estimés à 1.5A au total au démarrage). Pour éviter les chutes de tension critiques (brownouts), les capacités de filtrage ont été dimensionnées avec une marge de sécurité : 22µF en entrée et 47µF en sortie pour compenser la perte de capacité sous tension continue. Le cœur du convertisseur est une inductance de 0.47µH. En considérant un rendement (<maths>η</maths>) de 90%, le rapport cyclique s'établit à <maths>D=1−VOUTVIN×η</maths>, soit environ 40.6%. Le courant continu moyen demandé à la bobine se calcule via <maths>IL(DC)=VIN×ηVOUT×IOUT</maths>, soit environ 2.53A. En y ajoutant la moitié de l'ondulation crête-à-crête <maths>ΔIL(P−P)=L×fSWVIN×D</maths> , le courant de crête absolu atteint <maths>IL(P)=IL(DC)+2ΔIL(P−P)</maths>, soit 3.12A. L'inductance choisie doit donc impérativement présenter un courant de saturation supérieur à 3.5A pour garantir la stabilité du système en pleine charge.
Bilan
J'indique où j'en suis arrivé à la fin des séances.