{"id":825,"date":"2020-11-06T15:35:14","date_gmt":"2020-11-06T14:35:14","guid":{"rendered":"http:\/\/f6kmf.fr\/?p=825"},"modified":"2020-11-08T11:14:05","modified_gmt":"2020-11-08T10:14:05","slug":"arduino-et-la-radio","status":"publish","type":"post","link":"https:\/\/f6kmf.fr\/index.php\/2020\/11\/06\/arduino-et-la-radio\/","title":{"rendered":"Arduino et la radio &#8230;."},"content":{"rendered":"\n<p>Je voulais \u00e0 la fois tester un minuscule \u00e9metteur\/r\u00e9cepteur SA828 et me familiariser avec la programmation sous Arduino. J\u2019ai donc command\u00e9 un module <strong>SA828<\/strong> (14\u20ac) et un kit de d\u00e9marrage <strong>Arduino<\/strong> (20\u20ac).<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"328\" height=\"272\" src=\"https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/SA828-2.jpg\" alt=\"\" class=\"wp-image-846\" srcset=\"https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/SA828-2.jpg 328w, https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/SA828-2-300x249.jpg 300w\" sizes=\"auto, (max-width: 328px) 100vw, 328px\" \/><\/figure><\/div>\n\n\n\n<p>Il suffit de c\u00e2bler un haut parleur et un potentiom\u00e8tre pour obtenir un E\/R VHF ou UHF, le microphone, l\u2019ampli BF, le commutateur E\/R et un encodeur rotatif 16 canaux sont int\u00e9gr\u00e9s \u00e0 la platine. Un adaptateur USB \/ TTL permet de configurer les 16 fr\u00e9quences, les tonalit\u00e9s CTSS, le squelch \u00e0 l\u2019aide d\u2019un logiciel (NiceRF) <br>\nOn peut aussi utiliser l\u2019entr\u00e9e RXData pour envoyer des informations en provenance d\u2019un Arduino, il est ainsi possible de construire un E\/R couvrant le 2m ou le 70cm en fonction du mod\u00e8le de SA828 V ou U.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"391\" height=\"441\" src=\"https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/SA828_1-1.jpg\" alt=\"\" class=\"wp-image-848\" srcset=\"https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/SA828_1-1.jpg 391w, https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/SA828_1-1-266x300.jpg 266w\" sizes=\"auto, (max-width: 391px) 100vw, 391px\" \/><\/figure><\/div>\n\n\n\n<p>Pour faciliter les essais, le module est sur\u00e9lev\u00e9 sur une platine de CI (plus simple si on veut souder\/d\u00e9-souder facilement, car c\u2019est vraiment petit \u2026 enfin pour mes yeux!).<br> Une diode est soud\u00e9e en s\u00e9rie sur le + par pr\u00e9caution, mais aussi pour faire chuter la tension de 5V (car maxi 5V).<br>Une autre maquette est en construction avec un module DRA828 qui ne co\u00fbte que quelques \u20ac (c\u2019est un module nu, sans BF, sans encodeur)<br>\nAttention les commandes ne sont pas les m\u00eames, voir les DATASHEET)<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"1080\" style=\"aspect-ratio: 1920 \/ 1080;\" width=\"1920\" controls src=\"https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/VID_20201009_191254-1.mp4\"><\/video><\/figure>\n\n\n\n<p>En soudant une alimentation 5V maxi, un potentiom\u00e8tre pour le volume et un haut parleur, on poss\u00e8de un \u00e9metteur 1w \/ r\u00e9cepteur de 3cm sur 4 !<br>On peut pr\u00e9programmer les 16 canaux en utilisant un PC et une interface USB\/TTL fournie avec le module. Un logiciel est \u00e9galement disponible.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"929\" height=\"627\" src=\"https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/SA828_3.jpg\" alt=\"\" class=\"wp-image-831\" srcset=\"https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/SA828_3.jpg 929w, https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/SA828_3-300x202.jpg 300w, https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/SA828_3-768x518.jpg 768w\" sizes=\"auto, (max-width: 929px) 100vw, 929px\" \/><\/figure>\n\n\n\n<p>Le <strong>SA828<\/strong> re\u00e7oit des informations par l&rsquo;interm\u00e9diaire de son entr\u00e9e RXD (R\u00e9ception de DATA) et peut aussi retourner des informations par sa borne TXD (Transmission de DATA), num\u00e9ro de version, bonne prise en compte des donn\u00e9es. <br><br><strong>Je voulais donc tester la possibilit\u00e9 de mettre en forme et d&rsquo;envoyer des fr\u00e9quences d&rsquo;\u00e9missions et\/ou r\u00e9ceptions depuis un Arduino (En fait on va se contenter d&rsquo;envoyer les informations variables sur le canal 1) afin de construire un r\u00e9cepteur capable de couvrir toute la bande amateur des 2 m\u00e8tres (144 \u00e0 146 Mhz)<\/strong><\/p>\n\n\n\n<p><strong>L\u2019Arduino&nbsp;:<\/strong><br>Il est pour le moment mont\u00e9 sous forme de maquette avec la platine fournie avec le kit.<br> J\u2019ai choisi pour les essais de commander le changement de fr\u00e9quence par 2 boutons poussoir (mont\u00e9e et descente en fr\u00e9quence), j\u2019ai ajout\u00e9 l\u2019afficheur du kit, un potentiom\u00e8tre permet le r\u00e9glage de la luminosit\u00e9.<br>Je me suis inspir\u00e9 d&rsquo;un cours relatif \u00e0 l&rsquo;affichage (D&rsquo;un Thermom\u00e8tre), et \u00e0 gestion des boutons poussoirs (Allumage \/ extinction d&rsquo;une LED) <\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"661\" height=\"558\" src=\"https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/aduino_1.jpg\" alt=\"\" class=\"wp-image-828\" srcset=\"https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/aduino_1.jpg 661w, https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/aduino_1-300x253.jpg 300w\" sizes=\"auto, (max-width: 661px) 100vw, 661px\" \/><\/figure>\n\n\n\n<p>Voil\u00e0 le r\u00e9sultat sur la plaque d&rsquo;essai.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"456\" height=\"413\" src=\"https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/SA828_2-1.jpg\" alt=\"\" class=\"wp-image-832\" srcset=\"https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/SA828_2-1.jpg 456w, https:\/\/f6kmf.fr\/wp-content\/uploads\/2020\/11\/SA828_2-1-300x272.jpg 300w\" sizes=\"auto, (max-width: 456px) 100vw, 456px\" \/><\/figure><\/div>\n\n\n\n<p>La documentation sur les commandes \u00e0 envoyer vers le SA828 n&rsquo;\u00e9tait pas tr\u00e8s claire, aussi j&rsquo;ai utilis\u00e9 le logiciel pr\u00e9vu pour les canaux fixes, j&rsquo;ai plac\u00e9 un \u00ab\u00a0espion\u00a0\u00bb sur le port de communication afin de r\u00e9cup\u00e9rer les bonnes s\u00e9quences.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ inclure la librairie pour g\u00e9rer l'afficheur\n#include &lt;LiquidCrystal.h>\n\n\/\/ initialiser l'afficheur\nLiquidCrystal lcd(7, 8, 9, 10, 11, 12);\n\n\/\/ d\u00e9finir les param\u00e8tres pour SA828\nfloat frequence_reception = 145.7000;\nfloat frequence_emission = 145.7000;\nint squ = 0;\n\n\/\/ d\u00e9finir les poussoirs mont\u00e9e descente en fr\u00e9quence\nint buttonApin = 4;\nint buttonBpin = 5;\n\nvoid setup() {\n  \/\/ set up the LCD's number of columns and rows:\n  lcd.begin(16, 2);\n  \/\/ Print a message to the LCD.\n  lcd.print(\"RECEPTEUR VHF\");\n\n  pinMode(buttonApin, INPUT_PULLUP);  \n  pinMode(buttonBpin, INPUT_PULLUP);  \n}\n\nvoid loop() {\n\nif (digitalRead(buttonApin) == LOW)\n  {\n   \/\/ on augmente la fr\u00e9quence ;\n   frequence_reception = frequence_reception + 0.005 ;\n   \/\/ on attend pour \u00e9viter l'effet rebond du poussoir;\n   delay(500);\n   envoie ();\n  }\n  if (digitalRead(buttonBpin) == LOW)\n  {\n    \/\/ On diminue la fr\u00e9quence ;\n    frequence_reception = frequence_reception - 0.005 ;\n    \/\/ on attend pour \u00e9viter l'effet rebond du poussoir;\n    delay(500);\n    envoie ();\n  }\n  lcd.setCursor(0, 1);\n  \/\/ Afficher la nouvelle fr\u00e9quence\n  lcd.print(frequence_reception,4);\n  lcd.print(\" MHz\");\n}\nvoid envoie ()\n{\n  Serial.begin (9600);\n\n\/\/  envoyer au module\n\n  frequence_emission = frequence_reception;\n\n  Serial.print (\"AAFA3\");\n  Serial.print (frequence_emission, 4);\n  Serial.print (\",\");\n  Serial.print (frequence_reception, 4);\n  Serial.print (\",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\");\n  Serial.println (squ);\n}<\/code><\/pre>\n\n\n\n<p><strong>Et la suite \u2026\u2026<\/strong><br><br>Voil\u00e0 un beau projet \u00e0 finaliser avec nos jeunes recrues, un peu d&rsquo;\u00e9lectronique, d&rsquo;informatique et am\u00e9liorable \u00e0 souhait !<br><br><em><strong>\u00c9lectronique&nbsp;:<\/strong><\/em><br>Montage dans un bo\u00eetier d\u00e9di\u00e9, commande de fr\u00e9quence par encodeur, bouton shift pour les r\u00e9p\u00e9teurs \u2026.<br><br><strong><em>Informatique&nbsp;:<\/em><\/strong><br>Gestion de l\u2019encodeur, du d\u00e9calage E\/R r\u00e9p\u00e9teur, du 1750 Hz<br> Affichage du nom des relais \u2026..    <\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Je voulais \u00e0 la fois tester un minuscule \u00e9metteur\/r\u00e9cepteur SA828 et me familiariser avec la programmation sous Arduino. J\u2019ai donc<\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"colormag_page_container_layout":"default_layout","colormag_page_sidebar_layout":"default_layout","footnotes":""},"categories":[11,7,23,14],"tags":[],"class_list":["post-825","post","type-post","status-publish","format-standard","hentry","category-activites-radio","category-electronique","category-informatique-programmation","category-realisations"],"_links":{"self":[{"href":"https:\/\/f6kmf.fr\/index.php\/wp-json\/wp\/v2\/posts\/825","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/f6kmf.fr\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/f6kmf.fr\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/f6kmf.fr\/index.php\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/f6kmf.fr\/index.php\/wp-json\/wp\/v2\/comments?post=825"}],"version-history":[{"count":9,"href":"https:\/\/f6kmf.fr\/index.php\/wp-json\/wp\/v2\/posts\/825\/revisions"}],"predecessor-version":[{"id":910,"href":"https:\/\/f6kmf.fr\/index.php\/wp-json\/wp\/v2\/posts\/825\/revisions\/910"}],"wp:attachment":[{"href":"https:\/\/f6kmf.fr\/index.php\/wp-json\/wp\/v2\/media?parent=825"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/f6kmf.fr\/index.php\/wp-json\/wp\/v2\/categories?post=825"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/f6kmf.fr\/index.php\/wp-json\/wp\/v2\/tags?post=825"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}