13.1.3. Podłączanie kamery¶
Każda sesja zaczyna się od przycisku połączenia – ikony wtyczki na dole lewego paska narzędzi lub skrótu Ctrl+E. Kliknij go, a IDE przeskanuje porty szeregowe USB w poszukiwaniu kamer i połączy się z tą, którą znajdzie. Przy więcej niż jednej podłączonej kamerze pojawi się okno dialogowe z pytaniem, którego portu szeregowego użyć, z wstępnie zaznaczonym poprzednim wyborem; przy braku kamer IDE poinformuje o tym i zaproponuje ścieżkę odzyskiwania dla kamery, która nie jest już wykrywana (zobacz Aktualizacje i odzyskiwanie oprogramowania układowego).
13.1.3.1. Co dzieje się podczas łączenia¶
Łączenie to coś więcej niż otwarcie portu szeregowego. IDE identyfikuje płytkę, odczytuje wersję jej oprogramowania układowego i porównuje ją z wydaniem dołączonym do IDE. Jeśli oprogramowanie układowe kamery jest starsze, pojawia się monit z propozycją jego aktualizacji – to właśnie tym monitem kamery zwykle otrzymują aktualizacje oprogramowania układowego. Okno aktualizacji ma pola wyboru pozwalające także wyczyścić wewnętrzny system plików flash oraz zresetować system plików ROM; oba są domyślnie wyłączone i zapamiętują twój ostatni wybór, a żaden z nich nie jest zwykle potrzebny do aktualizacji. Po pierwszym udanym połączeniu IDE wyświetla również jednorazowe okno dialogowe wyjaśniające, co oznaczają kolory migania diody LED kamery.
Kamera podłączona w trybie bootloadera (DFU), a nie jako zwykłe urządzenie szeregowe, otrzymuje podczas łączenia własne okno dialogowe z opcjami zainstalowania najnowszego oprogramowania układowego wydania, wczytania konkretnego pliku oprogramowania układowego, wyczyszczenia wewnętrznego systemu plików flash lub edycji albo zresetowania systemu plików ROM.
IDE zgłasza też osobliwości danej platformy. W systemie Windows podczas łączenia sprawdza systemową listę urządzeń i raportuje wszelkie znalezione problemy ze sterownikami USB, wskazując zaangażowane urządzenia. W systemie Linux błąd uprawnień przy otwieraniu portu szeregowego niemal zawsze oznacza, że twój użytkownik nie należy do grupy dialout – okno błędu pokazuje dokładne polecenie adduser, które to naprawia.
13.1.3.2. Pasek stanu¶
Po połączeniu pasek stanu wzdłuż dolnej prawej części okna staje się pulpitem informacyjnym kamery:
Board – typ płytki zgłoszony przez kamerę.
Sensor – podłączony moduł sensora kamery.
Firmware Version – działająca wersja oprogramowania układowego. Kliknij ją, aby ponownie sprawdzić wersję względem dołączonego wydania i zaktualizować, jeśli dostępna jest nowsza.
Serial Port – port używany przez połączenie.
Drive – punkt montowania dysku flash powiązany z kamerą. Kliknij go, aby otworzyć dysk w menedżerze plików; gdy podłączonych jest kilka dysków kandydujących, IDE pyta, który należy do kamery, i zapamiętuje odpowiedź dla danego portu szeregowego. Kamera łączy się i uruchamia skrypty bez problemu nawet bez powiązanego dysku – tylko akcje zależne od dysku, takie jak otwieranie folderu dysku i zapisywanie skryptu jako
main.py, pozostają nieaktywne, dopóki nie zostanie on ustawiony.FPS – tempo, w jakim ramki docierają do IDE. To tempo podglądu, niekoniecznie tempo przechwytywania kamery – skrypt może działać szybciej, niż łącze USB jest w stanie strumieniować jego ramki.
Rozłączanie jest wyrozumiałe. Kliknięcie rozłączenia to schludny sposób na zakończenie, ale odłączenie kabla również działa – IDE zauważa, że kamera zniknęła (lub przestała odpowiadać) i rozłącza się samo.
13.1.3.3. Automatyczne ponowne łączenie¶
Tools → Auto Reconnect to OpenMV Cam sprawia, że połączenie jest w pełni automatyczne: ilekroć kamera pojawi się na USB, IDE łączy się z nią, a ręczne przyciski łączenia i rozłączania są nieaktywne, gdy ta opcja jest włączona. Przy jednej kamerze i jednym IDE jest to wygodny tryb – podłącz kamerę, a będzie połączona. Wyłącz go, gdy żonglujesz kilkoma kamerami lub współdzielisz port z innym programem.
Powiązana opcja Tools → Stop Script on Connect/Disconnect (domyślnie włączona) zatrzymuje każdy działający skrypt, gdy IDE się podłącza lub odłącza, dzięki czemu świeżo podłączona kamera jest zawsze w znanym stanie bezczynności. Wyłącz ją, aby pozwolić kamerze nadal wykonywać zapisany skrypt, podczas gdy IDE łączy się, by go obserwować.