altRobots
/robotigs/icons/actuator.pngActuatoren
/robotigs/icons/printboards.pngAlgemeen
/robotigs/icons/chassis.pngChassis
/robotigs/icons/florigs.pngFlorigs
/robotigs/icons/interfacing.gifInterfacing
/robotigs/icons/microphone_icon.pngMuziek
/robotigs/icons/musicKey_icon.pngMuzikanten
/robotigs/icons/shield.pngSchildjes
/sys/icons/sensors.pngSensors
/robotigs/icons/languages.pngTalen
/robotigs/icons/battery.pngVoedingen
/sys/icons/microController.pngµControllers
altContact
Dashboardalt  

Deze pagina is verouderd. Ga naar de vernieuwde pagina.

"); $counter = 0; $aantal = str_word_count($pict_list, 0, "0123456789"); $lijst = str_word_count($pict_list, 1, "0123456789"); while($counter < $aantal){ $pictkey = $lijst[$counter]; $qryy1 = ("SELECT * FROM illustrations WHERE ill_id = $pictkey ;"); $resulty1 = pg_query($con1, $qryy1); while($row = pg_fetch_array($resulty1)){ //Fields accesible by their name foreach( $row AS $key => $val ){ $$key = stripslashes( $val ); } } $image = ("/robotigs/documentatie/plaatjes/$ill_name"); $pictfull = str_replace('_small', '', $image); //Pictfull=biggest version $alt = ("Just wait till your 57...."); $txtname = get_txt($con1, 18, $koekje[2], $ill_id); //Robot illustrations subtitles echo (""); echo (''. $alt .'
'); $nummer = $counter + 1; $txtAfb = get_txt($con1, 9, $koekje[2], 3865); //Pic Afb if ($koekje[0]>0 and $koekje[3]>0){ //User is logged in and translates echo ("$txtAfb $nummer: "); echo ("$txtname"); echo ("
"); echo ("Ontkoppelen "); if ($counter==0){ echo ("Up "); }else{ echo ("Up "); } if ($nummer == $aantal){ echo ("Down"); }else{ echo ("Down"); } }else{ //Else of if Meaning the current useer is logged in echo ("$txtAfb $nummer: $txtname"); } echo ('

'); //End of this picture $counter++; //Prepair for next picture } echo (''); //All pictures are printed } //End of if there are 1 or more pictures to be printed ---------------------- ?>

Je robot besturen vanaf je PC. Tover je PC om in een dashboard met het Basisstation of maak er zelfs een cockpit van met bijvoorbeeld een joystick. Vanuit de cockpit kan je drive by wire (wiki) je robot besturen.
  • json npm etc
  • + npm@6.13.7
    + canvas-gauges@2.1.5
    https://www.cssscript.com/canvas-based-html5-gauge-library-gauge-js/
    https://github.com/HanSolo/charts
    file:///var/www/html/Gerrit/SteelSeries-Canvas-master/demoExtras.html

  • Software
  • python3 /var/www/html/robotigs/software/Dashboard/dashboard-01.pyx.py
    1. Dashboard-01
    2. We hebben nu in Python een joystick. De volgende stap is dat we daarmee een robot willen voortbewegen. We kunnen ook serieel communiceren met het basisstation. Dan rest nu de vraag: Wat gaan we communiceren? En wat laten we op het dashboard zien? Eerst maar eens een basis window maken met PySide2.
    3. /usr/local/lib/python3.6/dist-packages/PySide2/examples
    4. We hebben nu in Python een joystick. De volgende stap is dat we daarmee een robot willen voortbewegen. We kunnen ook serieel communiceren met het basisstation. Dan rest nu de vraag: Wat gaan we communiceren? En wat laten we op het dashboard zien? Eerst maar eens een basis window maken met PySide2.
    5. Dashboard.php
    6. Hier staat een testversie. Op zoek naar gauges.

  • Doelstelling
  • Moet functioneel zijn maar ook leuk voor jongens met toeters en bellen.

  • Beschrijving
  • Deze robot valt uiteen in 2 delen:
    1. Dashboard
    2. Dit is de software die op de pc loopt. Het doet zoveel als dat de naam zegt.
    3. Basistation
    4. Dit is de hardware die moet worden aangesloten via een USB kabel. Deze hardware bevat onder andere een LoRa zender/ontvanger.

  • Dashboard
  • Het is geschreven in Python. Voor de grafische desktop is Qt gebruikt.
    1. Werking
    2. Onderdelen
    3. De onderstaande onderdelen kunnen bijdragen aan een verhoogde gebruikerservaring.
      • De computer
      • De cockpit draait op een pc of laptop.
      • Joystick
      • We hebben nu in Python een joystick. De volgende stap is dat we daarmee een robot willen voortbewegen.

  • Basisstation
    1. Werking
    2. Het basisstation bestaat uit een arduino UNO en is via een USB kabel aangesloten op een PC/Laptop. Daar haalt de Arduino dan ook zijn voeding vandaan. De communicatie tussen PC en robot verloopt via LoRa en dat is eigenlijk alles waar de Arduino zich druk over hoeft te maken. De robot moet dus voorbereid zijn om zelf ook met LoRa te kunnen communiceren.

  • Legacy
    1. Server Software (legacy)
    2. De onderstaande heeft betrekking op dit project:
      • navigation.php
      • navigation is a php tool that shows all data collected by your robot on navigation. It requires Apache and php installed. This should run at all major platforms as well.
      • read_joystick.php
      • een joystick.
      • brains.php
      • brains.php like battery state from the battery monitor. Extplane.
      • bolderbotMini.php
      • bolderbotMini.php Test Bolderbot.
      • Skype
      • Skype provides eyes and ears in the cockpit. It runs on all major platforms.
      • 1sheeld internet
      • 1sheeld internet Exchange data: sensor data <-> commands.

"); echo (""); echo (""); //*** SHOW PARTS IN STORED SEQUENCE ($parts_list) --------------------------- while(isset($lijst[$cntrlp])){ $partkey = $lijst[$cntrlp]; $qrylp=("SELECT tblsystext.txtname , onderdelen.prt_icon_link , onderdelen.prijseurinclbtw , onderdelen.idsrtodd , onderdelen.lanid FROM onderdelen INNER JOIN tblsystext ON onderdelen.partid = tblsystext.recordid WHERE tblsystext.lanid = onderdelen.lanid AND tblsystext.txlid = 19 AND onderdelen.partid = $partkey ;"); $resultlp = pg_query($con1, $qrylp); $rowlp = pg_fetch_array($resultlp); if ($rowlp[4] == 1) {$imgname = "nederland.gif";} if ($rowlp[4] == 2) {$imgname = "deutschland.gif";} if ($rowlp[4] == 3) {$imgname = "uk.gif";} if ($rowlp[4] == 4) {$imgname = "france.gif";} //*** SHOW RECORD echo (""); echo (""); echo (""); echo (""); //End of show group if ($koekje[3]=="1") { //If this user wants to translate then //echo (""); echo (""); } echo (""); $bedrag = $bedrag + $rowlp[2]; //Calculate total robot price $cntrlp++; } //End of while displaying this mother part AND childparts echo ("
"); echo ("Onderdelen van deze robot:"); echo ("
"); echo ("$rowlp[1]"); echo ("$rowlp[0]"); //Show group $prtsrttxt = get_prtsrt_name2($con1, $koekje[2], $rowlp[3]); echo (""); echo ("$prtsrttxt "); //echo ("flag.gif"); //echo (""); echo (""); echo (" "); if ($cntrlp==0){ echo (" "); }else{ echo (""); echo (" "); } if ($cntrlp == $aantal){ echo (" "); }else{ echo (""); echo (""); } echo ("
"); if ($koekje[0]>0 and $koekje[3]>0){ //User is logged in and translates $bedrag_formatted = number_format($bedrag / 100, 0, ',', '.'); echo ("

Project costs: € $bedrag_formatted"); } } //End of if ($part_list) ----------------------------------------------------- //////////////////////////////////////////////////////////////////////////////// function get_prtsrt_name2($conid, $lan, $recid){ $qry = ("SELECT * FROM tblsystext WHERE txlid = 26 AND lanid = $lan AND recordid = $recid ;"); $result = pg_query($conid, $qry); $row = pg_fetch_array($result); return ("$row[1]"); } ?>

"); $folder = $arr1[0]; $countertmp = 0; foreach (scandir($folder, 1) as $filename) { if ($filename<>"." AND $filename <>".."){ if ($countertmp == 0){ $countertmp++; echo (""); } //End of if ($countertmp == 0) $tmp = "/"; $dir = substr($folder, 14) ."/"; $link = $tmp .$dir .$filename; $showname = substr($filename, 0 ,-4); echo ""; } //End of if ($filename<>"." AND $filename <>".."){ } //End of foreach (scandir($folder, 1) as $filename) echo ("
Software voor deze robot"); echo ("
$showname
"); } //End of if (isset($arr1[0])) ?> 0 and $koekje[3]>0){ //User is logged in and translates echo ("

"); echo (""); $qryap=("SELECT tblsystext.txtname , tblsystext.recordid FROM onderdelen INNER JOIN tblsystext ON onderdelen.partid = tblsystext.recordid WHERE txlid = 19 AND tblsystext.lanid = onderdelen.lanid AND selectable = 0 AND '$part_list' NOT LIKE '% ' || tblsystext.recordid || ' %' ORDER BY tblsystext.txtname ;"); $resultap = pg_query($con1, $qryap); echo ("
Add a part to this robot "); echo ("
"); echo ("  "); echo ("==>   Add"); echo ('
'); } //End of if ($koekje[0]>0) End of only for logged in users 0 and $koekje[3]>0){ //User is logged in and translates $qrydb=("SELECT farmbotversie.* FROM farmbotversie WHERE id = $idbot ;"); $resultdb = pg_query($con1, $qrydb); while($row = pg_fetch_array($resultdb)){ //Fields accesible by their name foreach( $row AS $key => $val ){ $$key = stripslashes( $val ); } } $jaar = substr($changeddate,0,4); $maand = substr($changeddate,5,2); $dag = substr($changeddate,8,2); $last_stamp = ("$dag $maand $jaar"); $jaar = substr($createddate,0,4); $maand = substr($createddate,5,2); $dag = substr($createddate,8,2); $create_stamp = ("$dag $maand $jaar"); echo ("

"); echo (""); echo (""); //*** LAST CHANGE MADE TO THIS ROBOT ---------------------------------------- echo (""); //*** RECORD CREATED DATE --------------------------------------------------- echo (""); // *** PART OWNER ----------------------------------------------------------- echo (""); // *** VERSIENAAM ----------------------------------------------------------- echo (""); // *** FLESSENHALS ----------------------------------------------------------- echo (""); // *** RECORD STATUS -------------------------------------------------------- echo (""); if ($koekje[0]>0 and $koekje[3]>0){ //User is logged in and translates $tmp = get_txt($con1, 9, $koekje[2], 3918); //Fieldname at screen LANGUAGE if ($lanid == 1) {$imgname = "nederland.png";} if ($lanid == 2) {$imgname = "deutschland.png";} if ($lanid == 3) {$imgname = "uk.png";} if ($lanid == 4) {$imgname = "france.png";} echo (""); } echo ("
"); echo ("General information "); echo ("("); echo ("edit)"); echo ("
Laatste wijziging  "); echo("$last_stamp
Aangemaakt  "); echo("$create_stamp
Eigenaar  "); //Needs botmaster from the file, tblsysuser.usrid $name = get_person_name($con1, $bot_master, $koekje[2]); echo("$name
Versienaam:  "); echo("$versienaam
Flessenhals:  "); echo("$flessenhals
Record status  "); $statTxt = getStatTxt($con1, $status, $koekje[2]); echo("$statTxt"); echo ("
$tmp"); echo ("flag.gif"); echo ("
"); } //End of if ($koekje[0]>0)