{"id":834,"date":"2019-10-13T11:37:25","date_gmt":"2019-10-13T10:37:25","guid":{"rendered":"http:\/\/wollef.org\/?p=834"},"modified":"2019-10-13T11:37:25","modified_gmt":"2019-10-13T10:37:25","slug":"raspberry-cars-rc-2-0","status":"publish","type":"post","link":"https:\/\/wollef.org\/blog\/raspberry-cars-rc-2-0\/","title":{"rendered":"Raspberry Cars : RC 2.0 !"},"content":{"rendered":"<p>Pour\u00a0mon travail personnel de l&#8217;ann\u00e9e 2019-2020 au Lyc\u00e9e Ermesinde, je vais\u00a0\u00e9tendre\u00a0mon travail personnel de l\u2019ann\u00e9e derni\u00e8re, avec de nouvelles technologies pour le rendre plus performant et avanc\u00e9.<\/p>\n<p>Le travail personnel de l\u2019ann\u00e9e derni\u00e8re consistait \u00e0 <a href=\"http:\/\/wollef.org\/fr\/cars-and-clouds-projet-personnel-2019\/\">connecter le site Salesforce avec une voiture Mercedes pour recevoir des donn\u00e9s sur la voiture en fonctionnement<\/a>. Par exemple la position de la voiture, sa vitesse, le niveau de carburant. Avec ces informations, on a eu l\u2019id\u00e9e de faire une course virtuelle o\u00f9 des personnes peuvent aller d\u2019un point de d\u00e9part \u00e0 un point d\u2019arriv\u00e9e, \u00e0 des dates diff\u00e9rentes, et par la suite on peut comparer les trajets entre eux.<\/p>\n<p>Le projet de l\u2019ann\u00e9e derni\u00e8re avait comme limitations que les donn\u00e9es passaient par les serveurs de Mercedes\u00a0: Les donn\u00e9es de la voiture \u00e9taient lues par une application Mercedes sur le t\u00e9l\u00e9phone mobile puis envoy\u00e9e sur le serveur Mercedes\u00a0; Ensuite, un programme ex\u00e9cut\u00e9 chez Salesforce allait se connecter automatiquement au serveur Mercedes pour demander les donn\u00e9es de la voiture et les enregistrer dans la base de donn\u00e9es de Salesforce.<\/p>\n<p>En r\u00e9sum\u00e9, les limitations \u00e9taient les suivantes\u00a0:<\/p>\n<ul>\n<li>On avait besoin d\u2019avoir le t\u00e9l\u00e9phone dans la voiture<\/li>\n<li>Ceci fonctionnait juste sur les voitures Mercedes<\/li>\n<li>Pour que Salesforce se connecte aux API du serveur cloud de Mercedes il fallait un contrat avec Mercedes et une fois la phase de d\u00e9veloppement termin\u00e9e il faut payer un abonnement<\/li>\n<li>On ne pouvait pas facilement se connecter tr\u00e8s souvent du serveur Salesforce au serveur Mercedes (on a fait toutes les 10min.)<\/li>\n<li>L\u2019application Mercedes n\u2019enregistrait pas les donn\u00e9s \u00e0 une haute fr\u00e9quence, on voudrait enregistrer toute les 2-10 secondes par exemple pour avoir une course plus dynamique<\/li>\n<\/ul>\n<p>Ce que\u00a0je veux r\u00e9aliser cette ann\u00e9e c\u2019est :<\/p>\n<ul>\n<li>Un petit ordinateur autonome dans la voiture,<\/li>\n<li>Fonctionnant avec toutes les marques de voiture,<\/li>\n<li>Ne n\u00e9cessitant pas d\u2019abonnement particulier,<\/li>\n<li>Enregistrant de la m\u00eame mani\u00e8re la position de la voiture, la vitesse, le niveau de carburant, l\u2019\u00e9tat des pneus et d\u2019autres param\u00e8tres,<\/li>\n<li>Les envoyant \u00e0 Salesforce le plus souvent possible.<\/li>\n<\/ul>\n<p>Ce travail personnel va donc n\u00e9cessiter diff\u00e9rents groupes de t\u00e2ches\u00a0:<\/p>\n<ul>\n<li>La conception technique de l\u2019ordinateur et de ses composants. Cela ressemble en partie \u00e0 ce que j\u2019avais fait dans mon deuxi\u00e8me travail personnel\u00a0\u00ab\u00a0Construire un ordinateur personnel de gaming\u00a0\u00bb (<a href=\"http:\/\/wollef.org\/fr\/category\/ordinateur-personnel\/\">http:\/\/wollef.org\/fr\/category\/ordinateur-personnel\/<\/a>)\u00a0, mais cette fois-ci avec une base Raspberry Pi.<\/li>\n<li>La programmation des t\u00e2ches de cet ordinateur (recueillir les informations et les envoyer automatiquement \u00e0 Salesforce, les mettant en attente si l\u2019internet mobile n\u2019est pas disponible). Pour cela je vais avoir besoin d&#8217;un nouveau langage de programmation\u00a0: Python, particuli\u00e8rement adapt\u00e9 au Raspberry Pi. Cela continue ma d\u00e9couverte de la programmation commenc\u00e9e avec le travail personnel sur l\u2019<a href=\"http:\/\/wollef.org\/fr\/histoire-de-la-programmation-14-des-premiers-bits-au-premier-langage\/\">histoire de la programmation<\/a> et sa partie pratique en java (<a href=\"http:\/\/wollef.org\/fr\/category\/java\/\">http:\/\/wollef.org\/fr\/category\/java\/<\/a>)\u00a0et la partie pratique du travail personnel sur les <a href=\"http:\/\/wollef.org\/fr\/a-la-decouverte-de-lunivers-des-jeux-video-1\/\">jeux vid\u00e9o<\/a> o\u00f9 j\u2019avais <a href=\"http:\/\/wollef.org\/fr\/la-programmation-du-jeu-pong-en-java-14\/\">programm\u00e9 le jeux historique Pong en java<\/a>.<\/li>\n<li>Les modifications du <a href=\"http:\/\/wollef.org\/fr\/le-jeu-12-fficher-la-position-des-voitures-en-temps-reel\/\">jeu Salesforce du travail personnel de l\u2019ann\u00e9e pass\u00e9e<\/a> ,pour tirer parti des informations envoy\u00e9es plus fr\u00e9quemment\u00a0: plus grand volume de donn\u00e9es \u00e0 g\u00e9rer, mais plus de fun dans la visualisation de la course\u00a0!<\/li>\n<li>J\u2019ai voulu appeler cet ordinateur <strong>Raspberry Car<\/strong>, soit R.C. 2.0 comme clin d\u2019\u0153il \u00e0<a href=\"http:\/\/wollef.org\/fr\/a-la-decouverte-de-la-voiture-telecommandee\/\"> mon premier travail personnel au Lyc\u00e9e Ermesinde qui portait sur les voitures Radio Command\u00e9e (R.C. 1.0)<\/a><\/li>\n<\/ul>\n<p>Voici la suite d&#8217;articles d\u00e9crivant les diff\u00e9rentes \u00e9tapes du projet\u00a0 :<\/p>\n<ul>\n<li><a href=\"http:\/\/wollef.org\/fr\/la-conception-du-raspberry-car-lordinateur\/\">La conception du Raspberry Car : l&#8217;ordinateur<\/a><\/li>\n<li><a href=\"http:\/\/wollef.org\/fr\/la-programmation-du-raspberry-pi-en-python\/\"><em>La Programmation en Python sur Raspberry Pi<\/em><\/a><\/li>\n<li>La programmation des diff\u00e9rents composants\n<ul>\n<li><a href=\"http:\/\/wollef.org\/fr\/raspberry-cars-communication-avec-la-carte-gps-en-python\/\">La carte GPS<\/a><\/li>\n<li><a href=\"http:\/\/wollef.org\/fr\/communication-avec-le-connecteur-obd-en-python\/\">Le connecteur OBD<\/a><\/li>\n<li><a href=\"http:\/\/wollef.org\/fr\/d-manipuler-une-base-de-donnees-en-python\/\">La base locale SQL<\/a><\/li>\n<li><a href=\"http:\/\/wollef.org\/fr\/communiquer-avec-salesforce-en-python\/\">Les acc\u00e8s \u00e0 Salesforce<\/a><\/li>\n<li><a href=\"http:\/\/wollef.org\/fr\/conception-logicielle-du-raspberry-car-les-ports-usb-3-4\/\">Trouver les Ports USB<\/a><\/li>\n<\/ul>\n<\/li>\n<li><em>Conception du logiciel RaspberryCars<\/em>\n<ul>\n<li><a href=\"http:\/\/wollef.org\/fr\/conception-logicielle-du-raspberry-car\/\">Les t\u00e2ches <\/a><\/li>\n<li><a href=\"http:\/\/wollef.org\/fr\/conception-logicielle-du-raspberry-car-les-donnees\/\">Les donn\u00e9es<\/a><\/li>\n<\/ul>\n<\/li>\n<li>Le logiciel Raspberry Cars\n<ul>\n<li><a href=\"http:\/\/wollef.org\/fr\/le-logiciel-raspberry-car-tache-de-surveillance-gps\/\">T\u00e2che de surveillance GPS<\/a><\/li>\n<li><a href=\"http:\/\/wollef.org\/fr\/tache-de-surveillance-obd\/\">T\u00e2che de surveillance OBD<\/a><\/li>\n<li><a href=\"http:\/\/wollef.org\/fr\/le-logiciel-raspberry-car-tache-de-stockage-dans-la-db-locale\/\">T\u00e2che de stockage dans la DB locale<\/a><\/li>\n<li><a href=\"http:\/\/wollef.org\/fr\/le-logiciel-raspberry-car-tache-denvoi-des-donnees-a-salesforce-4-4\/\">T\u00e2che d\u2019envoi des donn\u00e9es \u00e0 Salesforce<\/a><\/li>\n<li><a href=\"http:\/\/wollef.org\/fr\/le-logiciel-raspberry-cars-le-tout-ensemble-5-5\/\">Le tout ensemble<\/a><\/li>\n<\/ul>\n<\/li>\n<li>\u00c9volution du jeu Salesforce\n<ul>\n<li><a href=\"http:\/\/wollef.org\/fr\/evolution-du-jeu-salesforce-1-3-custom-objects\/\">Custom Objects<\/a><\/li>\n<li><a href=\"http:\/\/wollef.org\/fr\/evolution-du-jeu-salesforce-2-3-la-page-son-controleur\/\">La page, son contr\u00f4leur<\/a><\/li>\n<li><a href=\"http:\/\/wollef.org\/fr\/evolution-du-jeu-salesforce-3-4-la-page-son-affichage\/\">La page, son affichage<\/a><\/li>\n<li><a href=\"http:\/\/wollef.org\/fr\/evolution-du-jeu-salesforce-4-4-le-resultat-final\/\">Le r\u00e9sultat final<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pour\u00a0mon travail personnel de l&#8217;ann\u00e9e 2019-2020 au Lyc\u00e9e Ermesinde, je vais\u00a0\u00e9tendre\u00a0mon travail personnel de l\u2019ann\u00e9e derni\u00e8re, avec de nouvelles technologies pour le rendre plus performant et avanc\u00e9. Le travail personnel de l\u2019ann\u00e9e derni\u00e8re consistait \u00e0 connecter le site Salesforce avec une voiture Mercedes pour recevoir des donn\u00e9s sur la voiture en fonctionnement. Par exemple la <a class=\"read-more\" href=\"https:\/\/wollef.org\/blog\/raspberry-cars-rc-2-0\/\">Continue Reading<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[31,49,16,17,18],"tags":[],"class_list":["post-834","post","type-post","status-publish","format-standard","hentry","category-raspberry-cars","category-mercedes","category-python","category-raspberry-pi","category-salesforce"],"_links":{"self":[{"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/posts\/834","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/comments?post=834"}],"version-history":[{"count":0,"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/posts\/834\/revisions"}],"wp:attachment":[{"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/media?parent=834"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/categories?post=834"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/tags?post=834"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}