diff --git a/README.md b/README.md index ea65d7d..f39dda4 100644 --- a/README.md +++ b/README.md @@ -28,4 +28,105 @@ drone.land() ## Работа с модулями 1. Склонить данный репозиторий. -2. +2. Воткнуть флешку приемника в компьютер. +3. Запустить модуль длительным нажатием на кнопку сверху. +4. Запустить TelloModule.py дабы убедится в его работоспособности. + +```bash +python3 TelloModule.py +``` + +Вывод должен быть такой: + +```log + -------- Test blocking mode --------- + +Test 0 count = 2168 forward = 208 right = 234 back = 190 left = 115 light = 852 +Test 1 count = 2169 forward = 203 right = 234 back = 196 left = 111 light = 847 +Test 2 count = 2170 forward = 203 right = 235 back = 195 left = 113 light = 847 +Test 3 count = 2171 forward = 209 right = 235 back = 192 left = 112 light = 852 +Test 4 count = 2172 forward = 209 right = 233 back = 190 left = 114 light = 847 +Test 5 count = 2173 forward = 206 right = 234 back = 193 left = 112 light = 842 +Test 6 count = 2174 forward = 206 right = 235 back = 193 left = 112 light = 847 +Test 7 count = 2175 forward = 208 right = 237 back = 189 left = 110 light = 842 +Test 8 count = 2176 forward = 206 right = 234 back = 192 left = 114 light = 847 +Test 9 count = 2177 forward = 208 right = 233 back = 192 left = 114 light = 842 + + ------ Test NON Blocking mode ------- + +Test 0 count = 2179 forward = 205 right = 237 back = 193 left = 113 light = 847 +Test 1 count = 2180 forward = 206 right = 234 back = 192 left = 114 light = 852 +Test 2 count = 2181 forward = 204 right = 235 back = 191 left = 113 light = 847 +Test 3 count = 2181 forward = 204 right = 235 back = 191 left = 113 light = 847 +Test 4 count = 2182 forward = 207 right = 234 back = 192 left = 110 light = 842 +Test 5 count = 2183 forward = 204 right = 235 back = 193 left = 114 light = 842 +Test 6 count = 2184 forward = 208 right = 235 back = 190 left = 114 light = 847 +Test 7 count = 2185 forward = 209 right = 233 back = 194 left = 114 light = 852 +Test 8 count = 2185 forward = 209 right = 233 back = 194 left = 114 light = 852 +Test 9 count = 2186 forward = 208 right = 236 back = 193 left = 113 light = 852 + + ------------ Finish Test ------------ +``` + +Если прошли 10 тестов в первом случае и 10 во втором то все хорошо, если нет то повторяем все сначала. + +5. Запускаем test.py чтобы протестировать работу модуля вместе с коптером. + +```bash +python3 test.py +``` + +## Описание работы с библиотекой. + +1. Необходимо добавить файл библиотеки в свой скрипт. + +```python +from TelloModule import TelloModule +``` + +2. Необходимо создать экземпляр класса работающего с модулем + +```python +mod = TelloModule() +``` + +3. Далее нужно понимать что есть 2 режима работы библиотеки это Блокирующий и не Блокирующий. + +В блокирующим режиме при вызове метода приема информации с модуля, ждем когда придут новые значения, и только после этого скрипт продолжит исполнятся. Для его работы будет достаточно вызвать метод чтения значения и ждать его завершения. + +```python +line = mod.get_block_dist() +``` + +Данный метод возвращает лист с 6-ю параметрами: + +* счетчик (нужен для контроля количества пропущенных значений) +* передний дальномер +* правый дальномер +* задний дальномер +* левый дальномер +* Значение датчика освещенности + +Так-же тут необходимо отметить что все команды для коптера работают в блокирующем режиме. + +В не блокирующим режиме при вызове одного из методов происходит чтение прошлого значения с модуля из-за чего не происходит блокировки. Для использования этого режима нужна инициализация и де инициализация. + +```python +mod.module_init('distance') # инициализация модуля 'distance', это название модуля с дальномерами + +# ваш код + +mod.module_deinit() # Де инициализация модуля +``` + +Для данного режима реализованно большее количество методов: + +```python +count = mod.get_count() #вернет значение счетчика +forward = mod.get_forward_dist() #показание переднего сенсора +right = mod.get_right_dist() #показание правого сенсора +back = mod.get_back_dist() #показание заднего сенсора +left = mod.get_left_dist() #показание левого сенсора +light = mod.get_light() #показание датчика освещенности +dist = get_dist #вернет лист из показания следующих сенсоров 0) передний 1) правый 2) левый 3) задний. +``` \ No newline at end of file