Table of Contents

AROM, pymlab_bridge

pymlab_bridge je ROS nód, který slouží k propojení jednotlivých AROM nodů s zařízeními z PyMLABu. Díky tomu se může k I2C sběrnici přistupovat z více na sobě nezávislých programů bez možnosti nějaké kolize na sběrnici.

Komunikace po sběrnici

Všechny požadavky na komunikaci jsou vykonávány postupně podle pořadí v jakém jsou přijaty. Každý požadavek je přijat formou ROS služby (ROS-service), která obsahuje název příjemce, metodu a volitelné parametry. Navrácená hodnota je výsledná hodnota volané metody.

Z důvodu použití bufferu může být zpracování požadavku opožděno. Proto se nedoporučuje používat ROSpymlabServer pro požadavky, které závisí na přesném času. Čas vykonání metody je navrácen tazateli s výsledkem.

Inicializace

Inicializace se provede sama při spuštění nodu. Předpokládané umístění konfigurace je v json souboru /home/odroid/robozor/station/pymlab_presets/telescope.json

Příklad konfiguračního souboru vypadá takto:

{
  "name": "pymlab", 
  "children": [
      {
          "port": 1, 
          "name": "bus1",
          "children": [
              {
                  "type": "i2clcd",
                  "name": "StatusLCD",
                  "address": 63
              }, 
              {
                  "type": "i2cspi", 
                  "name": "mirrorRADEC", 
                  "address": 46
              },
              {
                  "type": "i2cspi", 
                  "name": "mirrorTIME", 
                  "address": 44
              }
          ]
      }
  ]
}

Následně lze pymlab_bridfe spustit příkazem

rosrun arom pymlab_bridge