{"id":2025,"date":"2018-02-10T14:39:32","date_gmt":"2018-02-10T13:39:32","guid":{"rendered":"http:\/\/mikrocontroller.bplaced.net\/wordpress\/?p=2025"},"modified":"2018-02-11T11:41:48","modified_gmt":"2018-02-11T10:41:48","slug":"jemand-lust-ein-uc-netzwerk-zu-testen-bzw-portieren","status":"publish","type":"post","link":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/?p=2025","title":{"rendered":"Jemand lust ein uC Netzwerk zu testen bzw portieren ?"},"content":{"rendered":"<p>Mahlzeit,<\/p>\n<p>ich habe &#8222;ein paar&#8220; Stunden in ein neues Projekt inverstiert. Ein <strong>Plattformunabh\u00e4ngiges quelloffenes selbstorganisierendes Mikrocontroller Netzwerk<\/strong>.<br \/>\nDas ganze ist noch in einem fr\u00fchen Stadium<br \/>\naber ein Testnetzwerk mit 8 Nodes l\u00e4uft bei mir bereits.<\/p>\n<p>Hier ein Bild von meinem momentanen Testaufbau:<\/p>\n<p><a href=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2018\/02\/nodes_va01.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-2026\" src=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2018\/02\/nodes_va01-300x169.jpg\" alt=\"\" width=\"300\" height=\"169\" srcset=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2018\/02\/nodes_va01-300x169.jpg 300w, https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2018\/02\/nodes_va01-768x432.jpg 768w, https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2018\/02\/nodes_va01-1024x576.jpg 1024w, https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2018\/02\/nodes_va01.jpg 2000w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Ich habe mir beim Chinaman 10 x STM32F103 besorgt (f\u00fcr zusammen 10EUR)<br \/>\nund teste im Moment nur mit einem Typ Hardware.<br \/>\n(die Eval-Boards haben je 3 UART-Ports)<\/p>\n<p><strong>Daten vom Netzwerk:<\/strong><br \/>\nMax-Anzahl der Nodes : 254 (theoretischer Wert&#8230;da nicht getestet)<br \/>\nMax-Anzahl Ports pro Node: 8 (da bin ich mir noch nicht sicher)<br \/>\nPort-Typ : UART<br \/>\nNetzwerk-Topologie : beliebig<\/p>\n<p><strong>Grobe Funktionsweise:<\/strong><br \/>\nDas routing wird dynamisch von den Nodes gehandelt somit kann man auch Nodes<br \/>\noder Teilnetze im Betrieb verbinden oder trennen. Alle Nodes sind gleichberechtig (kein Master\/Slave Aufbau). Jeder Node kennt die Netztopologie und kann Daten zu einem beliebigen anderen Node senden. Jeder Node hat auch eine einstellbare 8bit Group-Mask damit man eine ganze Gruppe von Nodes mit einer Nachricht erreichen kann.<\/p>\n<p>Hier ein Bild von meiner Test Topologie (8 Nodes mit max 3 Ports):<\/p>\n<p><a href=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2018\/02\/topologie_va02.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-2046\" src=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2018\/02\/topologie_va02-279x300.png\" alt=\"\" width=\"279\" height=\"300\" srcset=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2018\/02\/topologie_va02-279x300.png 279w, https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2018\/02\/topologie_va02.png 668w\" sizes=\"auto, (max-width: 279px) 100vw, 279px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>Das Projekt ist ein 4 Schichten aufgebaut:<br \/>\nLayer-3: Application-Layer (Userprogramm)<br \/>\nLayer-2: Network-Layer (organisiert das Netzwerk)<br \/>\nLayer-1: Communication-Layer (handelt den Packet-Transfer im Netzwerk)<br \/>\nLayer-0: Hardware-Layer (\u00fcbernimmt den Zugriff auf die Hardware)<\/p>\n<p><a href=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2018\/02\/layer_va01-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-2038\" src=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2018\/02\/layer_va01-1-300x274.png\" alt=\"\" width=\"300\" height=\"274\" srcset=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2018\/02\/layer_va01-1-300x274.png 300w, https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2018\/02\/layer_va01-1.png 500w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>F\u00fcr eine Portierung auf eine andere Plattform (z.B. ATMega) mu\u00df nur Layer-0 angepasst werden. Dieser enth\u00e4llt calls f\u00fcr die UART (Init, send_byte, receive_byte usw)<br \/>\n(Layer-1 und Layer-2 sind in standard Ansi-C geschrieben)<\/p>\n<p>Layer-3 (die User-Application) muss vom Benutzer programmiert werden.<br \/>\nHier steht drinn was der Node f\u00fcr Aufgaben hat, welche Daten er wohin sendet<br \/>\nund was er tun soll, wenn er Daten empf\u00e4ngt.<\/p>\n<p>N\u00fctzlich w\u00e4re ein Portierung auf den PC damit man leichter Debuggen kann. Im Moment<br \/>\nnutze ich einen UART-Port von einem Node als normale UART zum PC,<br \/>\nbesser w\u00e4re es aber, wenn der PC ein Teil vom Netzwerk w\u00e4re.<\/p>\n<p>Es gibt noch keine Doku und die Source ist noch voller debug code, aber falls<br \/>\nInterrese besteht oder jemand mehr erfahren will, schreibt hier einen Kommentar.<\/p>\n<p>Gru\u00df Uwe<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Mahlzeit, ich habe &#8222;ein paar&#8220; Stunden in ein neues Projekt inverstiert. Ein Plattformunabh\u00e4ngiges quelloffenes selbstorganisierendes Mikrocontroller Netzwerk. Das ganze ist noch in einem fr\u00fchen Stadium aber ein Testnetzwerk mit 8 Nodes l\u00e4uft bei mir bereits. Hier ein Bild von meinem &hellip; <a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/?p=2025\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":5,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-2025","post","type-post","status-publish","format-standard","hentry","category-allgemein"],"_links":{"self":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/2025","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2025"}],"version-history":[{"count":16,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/2025\/revisions"}],"predecessor-version":[{"id":2028,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/2025\/revisions\/2028"}],"wp:attachment":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2025"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2025"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2025"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}