Мазмуну:

Ракета телеметриясы/Позицияны көзөмөлдөөчү: 7 кадам
Ракета телеметриясы/Позицияны көзөмөлдөөчү: 7 кадам

Video: Ракета телеметриясы/Позицияны көзөмөлдөөчү: 7 кадам

Video: Ракета телеметриясы/Позицияны көзөмөлдөөчү: 7 кадам
Video: Заряжай! с 0 до Мастера Спорта. Методика БКМ. #tabletennis #настольныйтеннис #multiball 2024, Июль
Anonim
Ракета телеметриясы/Позицияны көзөмөлдөөчү
Ракета телеметриясы/Позицияны көзөмөлдөөчү

Бул долбоор 9 DOF сенсордук модулунан SD картасына учуу маалыматын каттоого жана бир эле учурда уюлдук тармактар аркылуу серверге GPS жайгашуусун өткөрүүгө арналган. Бул система, эгер системанын конуу аймагы LOSтан алыс болсо, ракетаны табууга мүмкүндүк берет.

1 -кадам: Бөлүктөрдүн тизмеси

Бөлүктөр тизмеси
Бөлүктөр тизмеси
Бөлүктөр тизмеси
Бөлүктөр тизмеси

Телеметрия системасы:

1x ATmega328 микроконтроллери (Arduino UNO, Nano)

1x Micro SD Breakout -

1x Micro SD Card - (өлчөмү FAT 16/32 форматталган мааниге ээ эмес) - Amazon Link

1x Gy -86 IMU - Amazon Link

Позицияны көзөмөлдөө:

1x ATmega328 микроконтроллери (Arduino UNO, Nano) (ар бир системага өзүнүн микро керек)

1x Sim800L GSM GPRS модулу - Amazon Link

1x SIM -карта (маалымат планы болушу керек) - https://ting.com/ (сиз колдонгон нерсеге гана төлөнөт)

1x NEO 6M GPS модулу - Amazon LInk

Жалпы бөлүктөр:

1x 3.7v lipo батареясы

1x 3.7-5v жогорулатуучу конвертер (эгер сиз PCBди курбасаңыз)

1x Raspberry pi, же php серверин жайгаштыра турган каалаган компьютер

-3D принтерге кирүү

PCB үчүн BOM электрондук жадыбалда көрсөтүлгөн

-Жерберчилер github репоунда -https://github.com/karagenit/maps-gps

2 -кадам: Подсистема 1: Позицияны көзөмөлдөө

Сыноо:

Колуңузда тутумдун бөлүктөрү (NEO-6M GPS, Sim800L) болгондон кийин, системалардын иштешин өз алдынча текшерип көрүшүңүз керек, андыктан башыңызды оорутпай, системаларды интеграциялоодо эмне иштебей турганын түшүнүүгө аракет кыласыз.

GPS тестирлөө:

GPS кабылдагычты текшерүү үчүн Ublox (U-Center Software) тарабынан берилген программаны колдонсоңуз болот.

же github репо менен байланышкан тесттин эскизи (GPS Test)

1. U-борбордук программалык камсыздоо менен тестирлөө үчүн, GPS кабылдагычты USB аркылуу туташтырып, U-борбордогу ком портун тандап алыңыз, система андан кийин автоматтык түрдө сиздин жайгашкан жериңизди көзөмөлдөп башташы керек.

2. Микроконтроллер менен текшерүү үчүн, GPS-тестирлөө эскизин IDE аркылуу arduinoго жүктөңүз. Андан кийин 5V жана GNDни ресивердеги arduino менен GPS RX пин 3 жана TX пин ардуиного 4 сандыкка туташтыргычка туташтырыңыз. Акыры, arduino IDEдеги сериялык мониторду ачыңыз жана baud ылдамдыгын 9600гө коюңуз жана алынган координаттардын туура экендигин текшериңиз.

Эскертүү: NEO-6M модулундагы спутниктик кулпунун визуалдык идентификатору-бул кызыл LED индикатору байланышты көрсөтүү үчүн бир нече секундда ирмелет.

SIM800L тестирлөө:

Уюлдук модулду сыноо үчүн сизде активдүү маалымат планында катталган сим -карта болушу керек, мен Tingди сунуштайм, анткени алар ай сайын берилүүчү пландын ордуна сиз колдонгонуңуз үчүн гана акы алышат.

Sim модулунун максаты - GPS кабыл алуучу кабыл алган жери менен серверге HTTP GET сурамын жөнөтүү.

1. Клетка модулун сыноо үчүн симкартаны модели ичине учу сыртка каратып салыңыз

2. SIM модулун GNDге жана 3.7-4.2v булагына туташтырыңыз, 5v колдонбоңуз !!!! модул 5v иштей албайт. Sim модулун RXти Analog 2ге жана TXты Arduinoдогу Analog 3ке туташтырыңыз

3. Уяча модулуна буйруктарды жөнөтүү үчүн, githubдан сериялык өтмө эскизди жүктөңүз.

4. бул үйрөткүчтү аткарыңыз же HTTP GET функциясын текшерүү үчүн AT Command Tester сыноосун жүктөп алыңыз

Ишке ашыруу:

Эки система тең өз алдынча иштээрин ырастагандан кийин, толук эскизди микроконтроллердин гитубуна жүктөөгө өтсөңүз болот. Сиз системанын веб -серверге маалыматтарды жөнөтүп жаткандыгын текшерүү үчүн сериялык мониторду 9600 baud ачсаңыз болот.

*Сервердин IP жана портун өзүңүзгө өзгөртүүнү унутпаңыз жана колдонуп жаткан уюлдук провайдер үчүн APNди табууну унутпаңыз.

Серверди орноткон кийинки кадамга өтүңүз

3 -кадам: Server орнотуу

Серверди орнотуу
Серверди орнотуу

Ракетанын жайгашкан жерин көрсөтүү үчүн серверди орнотуу үчүн, мен хостун катары малина pi колдонгом, бирок сиз каалаган компьютерди колдоно аласыз.

RPIде lightphpти орнотуу боюнча бул үйрөткүчтү аткарыңыз, андан кийин PHP файлдарын githubдан RPI/var/www/html папкасына көчүрүңүз. Андан кийин гана буйрукту колдонуңуз

Sudo кызматы lighttpd күч-кайра жүктөө

серверди кайра жүктөө үчүн.

Алыстан маалыматтарга жетүү үчүн роутериңиздеги сервер менен байланышкан портторду кайра жөнөтүүнү тактаңыз. Rpiде бул 80 порт болушу керек, ал эми тышкы порт каалагандай сан болушу мүмкүн.

RPI үчүн статикалык IP орнотуу жакшы идея, андыктан сиз алдыга порттор дайыма RPIдин дарегин көрсөтүп турат.

4 -кадам: Подсистема 2: Телеметриялык журнал

Телеметрия программасы позицияны көзөмөлдөө системасынан өзүнчө микроконтроллерде иштейт. Бул чечим ATmega328дин эс тутумунун чектелишинен улам, эки программанын бир системада иштешине тоскоол болгон. Микроконтроллердин жакшыртылган спецификациясы бар дагы бир тандоо бул маселени чечип, бир борбордук процессорду колдонууга уруксат бериши мүмкүн, бирок мен колдо болгон бөлүктөрүмдү колдонуунун оңойлугу үчүн колдонгум келди.

Өзгөчөлүктөрү: Бул программа мен интернеттен тапкан дагы бир мисалга негизделген.

  • Программа жергиликтүү түрдө салыштырмалуу бийиктигин (бийиктиги окуу нөлдө), температураны, басымды, X багытындагы ылдамдатууну (сенсордун физикалык багытына негизделген окуу ылдамдатуу багытын өзгөртүү керек) жана убакыт белгисин (миллис менен)).
  • Старттык тактада отурганда жана сактоо мейкиндигин текке кетирбөө үчүн, система бийиктиктин өзгөрүүсүн (программада конфигурацияланган) аныктагандан кийин гана маалыматтарды жаза баштайт жана ракета оригиналына кайтып келгенин аныктагандан кийин маалыматтарды жазууну токтотот. бийиктикте, же 5 мүнөттөн кийин учуу убактысы өттү.
  • Система ал күйгүзүлгөнүн жана маалыматтарды бир индикатор LED аркылуу жазууну көрсөтөт.

Сыноо:

Системаны сыноо үчүн, адегенде SD карттын үзүлүшүн туташтырыңыз

Arduino SD картасы

Pin 4 ---------------- CS

Pin 11 -------------- DI

Pin 13 -------------- SCK

Pin 12 -------------- DO

Эми GY-86 системасына I^2C аркылуу туташтырыңыз

Arduino GY-86

Pin A4 -------------- SDA

Pin A5 -------------- SCL

Pin 2 ---------------- INTA

SD картада datalog.txt аттуу башкы каталогдо файл түзүңүз, бул жерде система маалымат жазат.

Data_Logger.ino эскизин микроконтроллерге жүктөөдөн мурун ALT_THRESHOLD маанисин 0 кылып өзгөртүңүз, андыктан система тестирлөө үчүн бийиктикти этибарга албайт. Жүктөп бергенден кийин, системанын өндүрүшүн көрүү үчүн 9600 baudдагы сериялык мониторду ачыңыз. Тутум сенсорго туташа аларын жана SD картага маалымат жазылып жаткандыгын текшериңиз. Маалыматтардын картада жазылганын текшерүү үчүн тутумду сууруп, SD картты компьютериңизге салыңыз.

5 -кадам: Системалык интеграция

Системалык интеграция
Системалык интеграция
Системалык интеграция
Системалык интеграция

Системанын ар бир бөлүгү негизги ПХБда колдонулган бирдей конфигурацияда иштээрин текшергенден кийин, бардыгын чогултууга жана ишке даярданууга убакыт келди! Мен PCB жана схематикалык үчүн Gerbers жана EAGLE файлдарын githubга киргиздим. герберлерди өндүрүү үчүн OSH паркы же JLC сыяктуу өндүрүүчүгө жүктөшүңүз керек болот. Бул тактайлар эки катмардан турат жана анча чоң эмес, 10x10x10 см категориядагы арзан тактайлар үчүн.

Такталар өндүрүштөн кайтып келгенден кийин, жадыбалда табылган бардык компоненттерди жана бөлүктөрдүн тизмесин тактага кошуу убактысы келет.

Программалоо:

Баары ширетилгенден кийин, программаларды эки микроконтроллерге жүктөө керек болот. Тактадагы мейкиндикти үнөмдөө үчүн менде USB функциясы жок болчу, бирок ICSPти жана сериялык портторду сындырып таштадым, андыктан дагы эле программаны жүктөп, көзөмөлдөп турсаңыз болот.

  • Программаны жүктөө үчүн Arduino тактасын программист катары колдонуу боюнча бул окуу куралын аткарыңыз. ICSP_GPS портуна SimGpsTransmitter.ino жана Data_Logger.ino ICSP_DL портуна жүктөө (PCBдеги ICSP порту стандарттык Arduino UNO такталарында табылган схема).
  • Бардык программалар жүктөлгөндөн кийин, сиз 3.7-4.2V менен батареянын кирүүсүнөн түзмөктү кубаттай аласыз жана системанын иштеп жатканын текшерүү үчүн 4 индикаторун колдоно аласыз.

    • Алгачкы эки жарык 5V_Ok жана VBATT_OK батарейка жана 5v рельстери иштеп жатканын көрсөтөт.
    • Үчүнчү жарык DL_OK телеметрикалык каттоо активдүү экенин көрсөтүү үчүн ар бир 1 секундда ирмелет.
    • Акыркы SIM_Transmit уюлдук жана GPS модулдары туташып, маалыматтар серверге жөнөтүлгөндөн кийин күйөт.

6 -кадам: Каптоо

Корпус
Корпус

Мен бул долбоорду иштеп жаткан ракетанын ички диаметри 29мм, электрониканы коргоо жана жамааттын ракетанын цилиндрдик корпусуна батышына жол берүү үчүн, мен эки бөлүктөн турган 3D басылган корпусту жасадым. көрсөткүч жарыктары үчүн портторду көрүү. Басып чыгаруу үчүн STL файлдары жана оригиналдуу.ipt файлдары github репоунда. Мен муну моделдеген эмесмин, анткени ал учурда колдоно турган батареямды билбедим, бирок 120 мАч батарейканын корпусунун түбү менен бирдей отуруу үчүн кол менен тешикти кол менен түздүм. Бул батарейка ~ 200мА кубат керектөөдө системанын ~ 45мин максималдуу иштөө убактысын берет (Бул процессордун колдонулушуна жана маалыматтарды берүү үчүн кубаттуулукка көз каранды, SIM800L байланыш учурунда жарылып кетүү учурунда 2А жогору тартылган).

7 -кадам: Жыйынтык

Бул долбоор Amazonдо табылган дискреттик модулдарды колдонгондугумду эске алганда, эки башка системанын абдан жөнөкөй аткарылышы болду, анткени системанын жалпы интеграциясы бир аз начар, анткени долбоордун жалпы көлөмү ал аткарган иштер үчүн абдан чоң. Кээ бир өндүрүүчүлөрдүн сунуштарын карап, уюлдук жана GPSти камтыган SIPти колдонуу пакеттин жалпы көлөмүн бир топ азайтат.

Учуу тестирлөөсүнөн кийин мен программага бир аз өзгөртүүлөрдү киргизишим керек жана Github репо -версиясын кандайдыр бир өзгөртүүлөр менен жаңыртып турам деп ишенем.

Бул долбоор сизге жакты деп үмүттөнөм, сизди кызыктырган суроолор боюнча мага кайрылыңыз.

Сунушталууда: