Expertise · Systèmes pour robots
Logiciel pour robots : la couche qui décide du mouvement, le module de vision et celui d’audition. Aujourd’hui, nous avons une vérification hors ligne et une simulation — nous n’avons rien qui commande un moteur réel.
Nous écrivons la cinématique, la vérification de trajectoire et la simulation physique reproductible, avec des gates qui bloquent lorsque la preuve manque. Pour la vision, nous avons un prototype sur caméra fixe, pas sur robot. Pour l’audio sur robot, nous n’avons rien construit, et la page le dit au lieu d’emprunter des preuves à la téléphonie. Nous ne travaillons pas avec ROS.
Offre, avec conditionsAm rulat azi tot ce se poate rula. Stratul de control există și e serios, dar e offline: un modul propriu de cinematică pentru un braț cu șase axe, care a rezolvat 8.400 din 8.400 de puncte de traseu, și un validator de fizică pe MuJoCo 3.10.0 cu 34 de teste trecute, plus 14 teste pe partea de vizualizare. Amândouă declară în propria sursă că nu au transport către hardware și nu pot comanda un robot real. La vedere avem un prototip propriu — detecție și urmărire de persoane pe cameră IP fixă — cu un singur comit și cu directorul de teste gol. La audio pe robot avem zero: tot ce e pe disc e voce de call-center sau bibliotecă terță de telefonie, iar singura lucrare acustică proprie s-a încheiat cu un rezultat negativ, scris în aplicație. ROS: zero instalat, zero scris. Regula cere minimum două implementări proprii pentru „am făcut”; pe control le am, dar niciuna nu atinge hardware, iar celelalte două straturi ale serviciului sunt sub prag. Deci: ofertă cu condiții, cu granițele desenate.
Le logiciel d’un robot a trois couches qui se cassent différemment : ce qu’il voit et entend, ce qu’il décide, et ce qu’il envoie vers les moteurs. Sur les deux premières, nous avons des travaux propres avec des tests qui s’exécutent. Sur la troisième — le pont vers le matériel — nous n’avons rien, et c’est la limite du service, pas un détail d’implémentation. Deux de nos codes le disent dans leur propre en-tête, en anglais, précisément pour ne pas pouvoir être lus de travers : le module de cinématique n’a pas de transport vers le matériel et ne peut pas commander un robot réel.
Ce qui existe sur la partie mouvement, c’est une vérification avant mouvement. Un module propre calcule la cinématique directe, le jacobien et la cinématique inverse pour un bras à six axes, avec une réserve imposée par rapport aux limites de chaque axe, et il a été utilisé pour vérifier une trajectoire entière : 8.400 points demandés, 8.400 résolus, avec la vitesse maximale par axe restée sous 8 % de la limite du catalogue. À part cela, un validateur de physique s’exécute sur MuJoCo 3.10.0 sur processeur, avec un pas de calcul d’une milliseconde, dans six scénarios, chacun exécuté deux fois, avec la même graine — et les deux exécutions donnent des empreintes identiques. Le déterminisme n’est pas une affirmation, c’est une comparaison de sommes de contrôle.
Ce qu’il y a du côté de la vision est moins important, et il est honnête de dire à quel point. Un prototype propre détecte et suit des personnes sur des flux de caméra IP, avec un petit détecteur de la famille YOLO, un suiveur multi-objets, une estimation de posture pour cinq états et le contrôle du pivotement, de l’inclinaison et du zoom de la caméra. Il n’a qu’un seul commit et un répertoire de tests vide. Et la différence entre cela et la vision d’un robot est réelle, pas formelle : la caméra d’un robot se déplace avec lui, la scène est proche, l’exposition change à chaque pas, et le budget de latence est différent, parce que l’image doit parvenir à une décision de mouvement, pas à un écran. Nous n’avons pas de caméra de profondeur, nous n’avons pas d’étalonnage de caméra, nous n’avons pas d’odométrie visuelle.
Du côté audio pour robots, nous n’avons rien construit, et nous n’emprunterons pas de preuves ailleurs. Nous avons de vrais travaux vocaux pour la téléphonie et pour des assistants conversationnels, mais un microphone sur un robot a d’autres problèmes : le bruit propre de la machine, des ventilateurs et des servomoteurs qui se déclenchent בדיוק lorsque le robot se met en mouvement, la direction d’où vient la voix, l’écho dans la pièce et la distance variable. Le seul travail acoustique propre que nous avons s’est terminé par un résultat négatif, écrit dans l’application, et nous le publions tel quel — parce qu’un résultat négatif mesuré est plus utile qu’une promesse.