Агуулгын хүснэгт:

CanSat - Эхлэгчдэд зориулсан гарын авлага: 6 алхам
CanSat - Эхлэгчдэд зориулсан гарын авлага: 6 алхам

Видео: CanSat - Эхлэгчдэд зориулсан гарын авлага: 6 алхам

Видео: CanSat - Эхлэгчдэд зориулсан гарын авлага: 6 алхам
Видео: ТАКОВ МОЙ ПУТЬ В L4D2 2024, Долдугаар сарын
Anonim
CanSat - Эхлэгчдэд зориулсан гарын авлага
CanSat - Эхлэгчдэд зориулсан гарын авлага
CanSat - Эхлэгчдэд зориулсан гарын авлага
CanSat - Эхлэгчдэд зориулсан гарын авлага
CanSat - Эхлэгчдэд зориулсан гарын авлага
CanSat - Эхлэгчдэд зориулсан гарын авлага

Энэхүү зааварчилгааны гол зорилго нь CanSat -ийн хөгжлийн явцыг алхам алхамаар хуваалцах явдал юм. Гэхдээ эхлэхээс өмнө CanSat гэж юу болохыг, мөн түүний гол функцууд юу болохыг, мөн боломжийг ашиглан бид багаа танилцуулах гэж байгаагаа тодорхой хэлье. Энэхүү төсөл нь манай их сургууль болох Universidade Tecnológica Federal do Paraná (UTFPR), кампус Корнелио Прокопио дахь өргөтгөлийн төслөөр эхэлсэн. Зөвлөхийнхөө удирдлага дор бид CanSats -т элсэх зорилготой үйл ажиллагааны төлөвлөгөө боловсруулсан бөгөөд энэ нь хэрхэн ажилладагийг ойлгохын тулд түүний бүх тал, шинж чанарыг судлах гэсэн утгатай байв. CanSat, энэ гарын авлагыг боловсруулсан болно. CanSat -ийг пикосателлит гэж ангилдаг бөгөөд энэ нь 1кг -аар хязгаарлагддаг гэсэн үг боловч ихэвчлэн CanSats нь 350 гр орчим жинтэй бөгөөд бүтэц нь 6, 1 см диаметртэй цилиндртэй, 11, 65 см өндөртэй лаазанд суурилдаг. Энэхүү загварыг их дээд сургуулиудад эдгээр технологид нэвтрэх боломжийг олгохын тулд хиймэл дагуул хөгжүүлэх үйл явцыг хялбарчлах зорилготойгоор танилцуулсан бөгөөд энэхүү загварыг нэвтрүүлсэн өрсөлдөөний үр дүнд алдартай болжээ. Ерөнхийдөө CanSats нь цахилгаан бүтэц, мэдрэх систем, телеметрийн систем, үндсэн систем гэсэн 4 бүтэц дээр суурилдаг. Тиймээс систем тус бүрийг нарийвчлан авч үзье: - Эрчим хүчний систем: энэ систем нь цахилгаан эрчим хүчийг бусад хэрэгцээнд нийцүүлэн нийлүүлэх үүрэгтэй. Өөрөөр хэлбэл, шаардлагатай хязгаарлалт, хүчдэл, гүйдлийг системд нийлүүлэх ёстой. Нэмж дурдахад энэ нь бусад системийн аюулгүй байдал, зохистой зан байдлыг баталгаажуулахын тулд хамгаалалтын бүрэлдэхүүн хэсгүүдтэй байж болно. Ихэнхдээ энэ нь батерей ба хүчдэлийн зохицуулагчийн хэлхээнд суурилдаг боловч эрчим хүчний менежментийн техник, хэд хэдэн төрлийн хамгаалалт гэх мэт бусад олон функцийг нэмж болно. - Мэдрэх систем: энэ систем нь шаардлагатай өгөгдлийг цуглуулах үүрэгтэй бүх мэдрэгч, төхөөрөмжөөс бүрдэнэ. Энэ нь үндсэн системд хэд хэдэн аргаар холбогдож болно, цуваа протокол, зэрэгцээ протоколууд, тиймээс хамгийн тохиромжтойг нь тодорхойлохын тулд эдгээр бүх техникийг эзэмших нь үнэхээр чухал юм. Ерөнхийдөө цуваа протокол нь цөөн тооны холболт, олон талт байдлаас шалтгаалан ихэвчлэн сонгогддог протоколууд бөгөөд хамгийн алдартай нь SPI, I2C, UART протокол юм. - Телеметрийн систем: энэ систем нь утасгүй холбооны протокол, техник хангамжийг багтаасан CanSat болон газрын хяналтын станцын хооронд утасгүй холбоо тогтоох үүрэгтэй. - Үндсэн систем: энэ систем нь бусад бүх системийг хооронд нь холбох үүрэгтэй бөгөөд ингэснээр тэдгээрийн организмын үйл ажиллагааны дарааллыг хянаж, синхрончлох болно.

Алхам 1: Үндсэн систем

Үндсэн систем
Үндсэн систем

Олон шалтгаанаар бид ARM® Cortex®-M4F дээр суурилсан микро хянагчийг сонгосон бөгөөд энэ нь бага хүчин чадалтай MCU бөгөөд илүү өндөр боловсруулалтын хүчийг санал болгодог бөгөөд DSP функц гэх мэт RISK микроконтроллерт төдийлөн ажиглагддаггүй. Эдгээр шинж чанарууд нь сонирхолтой байдаг, учир нь тэдгээр нь микроконтроллерыг өөрчлөх шаардлагагүй (мэдээжийн хэрэг, түүний хязгаарыг харгалзан үзэх) CanSat програмын онцлог шинж чанарыг нэмэгдүүлэх боломжийг олгодог.

Төсөл нь санхүүгийн хувьд хэд хэдэн хязгаарлалттай байсан тул сонгосон микроконтроллер нь боломжийн үнэтэй байсан тул техникийн үзүүлэлтүүдийг дагаж бид ARM® Cortex®-M4F-д суурилсан MCU TM4C123G LaunchPad-ийг сонгосон бөгөөд энэ нь манай төсөлд дөнгөж суулгасан.. Мөн баримт бичиг (үйлдвэрлэгчийн өгсөн мэдээллийн хуудас, шинж чанарын баримт бичиг) болон MCU -ийн IDE нь үнэхээр хөгжүүлэлтэд ихээхэн тусалж байсан тул үүнийг анхаарч үзэх хэрэгтэй.

Энэхүү Кансатад бид үүнийг энгийн байлгахын тулд хөөргөх самбарыг ашиглан хөгжүүлэхээр шийдсэн боловч мэдээжийн хэрэг, ирээдүйд хэрэгжих төслүүдэд энэ нь бидний төсөлд хэрэгтэй зүйл биш юм. Дээрээс нь түүний формат нь CanSat -ийн хэмжээ хамгийн бага байх тохиолдолд манай CanSat -ийн бүтцийн төслийг ихээхэн хязгаарладаг.

Тиймээс, энэ системд тохирох "тархи" -ыг сонгосны дараа дараагийн алхам бол түүний програм хангамжийг хөгжүүлэх явдал байсан бөгөөд үүнийг хялбарчлахын тулд бид дараах дарааллыг 1Гц давтамжтайгаар хийдэг дараалсан програмыг ашиглахаар шийдсэн юм.

Мэдрэгчийн уншилт> өгөгдөл хадгалах> өгөгдөл дамжуулах

Мэдрэгчийн хэсгийг дараа нь мэдрэх системд тайлбарлах бөгөөд телеметрийн системд мэдээлэл дамжуулах талаар тайлбарлах болно. Эцэст нь хэлэхэд микроконтроллерийг хэрхэн програмчлах талаар сурах байсан бөгөөд бидний хувьд MCU, GPIO, I2C модуль, UART модуль, SPI модулийн дараах функцуудыг сурах шаардлагатай байв.

GPIO буюу энгийн зориулалттай оролт, гаралт нь зөв тохируулагдсан тохиолдолд хэд хэдэн функцийг гүйцэтгэхэд ашиглаж болох портууд юм. Бид бусад модулиудад ч гэсэн GPIO -д зориулж C номын сан ашигладаггүй тул шаардлагатай бүх бүртгэлийг тохируулах ёстой байв. Ийм учраас бид доорх модулиудын бүртгэлтэй холбоотой жишээ, тайлбарыг агуулсан үндсэн гарын авлага бичсэн болно.

Мөн кодыг хялбарчлах, цэгцлэх зорилгоор хэд хэдэн номын сан бий болгосон. Тиймээс номын санг дараахь зорилгоор байгуулжээ.

- SPI протокол

- I2C протокол

- UART протокол

- NRF24L01+ - дамжуулагч

Эдгээр номын санг доороос авах боломжтой боловч бид Keil uvision 5 IDE -ийг ашиглаж байсныг санаарай, тиймээс эдгээр номын сан код зохиогч дээр ажиллахгүй байна. Эцэст нь бүх номын санг үүсгэж, шаардлагатай бүх зүйлийг сурч мэдсэний дараа эцсийн кодыг нэгтгэсэн бөгөөд таны төсөөлж байгаагаар үүнийг доороос авах боломжтой.

Алхам 2: Мэдрэх систем

Мэдрэх систем
Мэдрэх систем
Мэдрэх систем
Мэдрэх систем
Мэдрэх систем
Мэдрэх систем
Мэдрэх систем
Мэдрэх систем

Энэхүү систем нь CanSat -ийн ажиллах нөхцлийн талаар мэдээлэл цуглуулах үүрэгтэй бүх мэдрэгч, төхөөрөмжөөс бүрдэнэ. Манай тохиолдолд бид дараах мэдрэгчийг сонгосон болно.

- 3 тэнхлэгтэй дижитал хурдасгуур - MPU6050

- 3 тэнхлэгтэй дижитал гироскоп - MPU6050

- 3 тэнхлэгтэй тоон соронзон хэмжигч - HMC5883L

- дижитал барометр - BMP280

- ба GPS - Tyco A1035D

Сонголтууд нь голчлон хүртээмжтэй байдалд суурилсан бөгөөд энэ нь механик болон цахилгаан (холбооны протокол, цахилгаан хангамж гэх мэт) шинж чанарууд нь манай төсөлтэй нийцэж байгаа тохиолдолд бусад мэдрэгчийн хувьд бэлэн байгаа тул сонголтод нэмэлт параметр тавиагүй болно гэсэн үг юм. сонголт хязгаарлагдмал байсан. Мэдрэгчийг олж авсны дараа тэдгээрийг ажиллуулах цаг болжээ.

Хамгийн түрүүнд судалсан зүйл бол MPU6050 нэртэй 3 тэнхлэг дижитал акселерометр ба гироскоп байв (үүнийг ARDUINO төслүүдэд өргөнөөр ашигладаг бол хаанаас ч олоход хялбар байдаг), харилцаа холбоо нь I2C протокол дээр суурилсан протокол юм. боол бүр өөрийн гэсэн хаягийг эзэмшдэг бөгөөд хэд хэдэн төхөөрөмжийг зэрэгцээ холбох боломжийг олгодог бөгөөд хаяг нь 7 бит урт, ойролцоогоор 127 төхөөрөмжийг нэг цуваа автобусанд холбох боломжтой. Энэхүү холбооны протокол нь өгөгдлийн автобус, цагийн автобус гэсэн хоёр автобусанд ажилладаг тул мэдээлэл солилцохын тулд мастер 8 цикл цаг илгээх ёстой. байтын хэмжээгээр) хүлээн авах эсвэл дамжуулах үйл ажиллагаанд. MPU6050 -ийн хаяг нь 0b110100X бөгөөд X нь унших эсвэл бичих үйлдлийг дуудах (илэрхийлэх) (0 нь бичих үйлдлийг, 1 нь унших ажиллагааг илэрхийлдэг) тул та мэдрэгчийг уншихыг хүссэн үедээ түүний хаягийг 0xD1 болгон ашиглаарай. бичихийг хүссэн үедээ хаягийг нь 0xD0 болгон ашиглаарай.

I2C протоколыг судалсны дараа MPU6050 -ийг үнэн хэрэгтээ судалж, өөрөөр хэлбэл шаардлагатай мэдээллийг олж авахын тулд өгөгдлийн хуудсыг нь уншсан болно, учир нь энэ мэдрэгчийн хувьд зөвхөн гурван регистрийг тохируулах шаардлагатай байв. Бүртгүүлэх - 0x6B хаяг (мэдрэгч нь унтах горимд ороогүй болохыг баталгаажуулахын тулд), гироскопын тохиргооны бүртгэл - 0x1B хаяг (гироскопын бүх хэмжээсийг тохируулах зорилгоор), эцэст нь акселерометрийн тохиргооны бүртгэл - 0x1C хаяг (хурдатгал хэмжигчийн бүрэн хэмжээний масштабыг тохируулах захиалга). Мэдрэгчийн гүйцэтгэлийг оновчтой болгох боломжийг олгодог өөр хэд хэдэн бүртгэл байдаг боловч энэ төслийн хувьд эдгээр тохиргоо хангалттай байна.

Тиймээс мэдрэгчийг зөв тохируулсны дараа та үүнийг унших боломжтой боллоо. Хүссэн мэдээлэл нь 0x3B регистр ба 0x48 регистрийн хооронд явагддаг бөгөөд тэнхлэг бүрийн утга нь 2 байтын кодоор кодлогдсон хоёр байтаас бүрддэг бөгөөд энэ нь утга учиртай байхын тулд уншсан өгөгдлийг хөрвүүлэх ёстой гэсэн үг юм. дараа хэлэлцсэн).

MPU6050 -ийг ашиглаж дууссаны дараа HMC5883L нэртэй 3 тэнхлэгтэй дижитал соронзон хэмжигчийг судлах цаг болжээ (үүнийг ARDUINO төслүүдэд өргөн ашигладаг бол үүнийг хаанаас ч олох боломжтой), мөн түүний харилцаа холбооны протокол нь цуваа протокол юм. I2C. Түүний хаяг нь 0b0011110X бөгөөд X нь унших эсвэл бичих үйлдлийг дуудахад ашигладаг (0 нь бичих үйлдлийг, 1 нь унших үйлдлийг илэрхийлдэг) тул та мэдрэгчийг уншихыг хүссэн үедээ хаягаа 0x3D болгон ашиглана уу. Та бичихийг хүсвэл хаягийг нь 0x3C болгон ашиглаарай.

Энэ тохиолдолд HMC5883L -ийг эхлүүлэхийн тулд гурван бүртгэлийг тохируулах шаардлагатай байсан, тохиргооны бүртгэл A - хаяг 0x00 (өгөгдлийн гаралтын хурд ба хэмжилтийн горимыг тохируулахын тулд), тохиргооны регистр B - хаяг 0x01 (мэдрэгчийн ололтыг тохируулахын тулд) ба хамгийн сүүлд горимын бүртгэл - 0x02 хаяг (төхөөрөмжийн ажиллах горимыг тохируулахын тулд).

Тиймээс HMC5883L -ийг зөв тохируулсны дараа үүнийг унших боломжтой боллоо. Хүссэн мэдээлэл нь 0x03 регистр ба 0x08 регистрийн хооронд явагддаг бөгөөд тэнхлэг бүрийн утга нь 2 байтын хоёр нэмэлт хэлбэрээр кодлогдсон бөгөөд энэ нь уншсан өгөгдлийг утга учиртай болгохын тулд хөрвүүлэх ёстой гэсэн үг юм. дараа хэлэлцсэн). Ялангуяа энэ мэдрэгчийн хувьд та бүх мэдээллийг нэг дор унших ёстой, эс тэгвээс гаралтын өгөгдлийг зөвхөн бүх бүртгэлийг бичиж байх үед эдгээр бүртгэлд бичдэг бол энэ нь санал болгосноор ажиллахгүй байж магадгүй юм. тиймээс бүгдийг нь уншихаа мартуузай.

Эцэст нь хэлэхэд, BMP280 гэж нэрлэгддэг өөр нэг I2C протоколын мэдрэгч болох дижитал барометрийг судалсан болно (үүнийг ARDUINO төслүүдэд өргөнөөр ашигладаг бол хаанаас ч олох боломжтой). Түүний хаяг нь b01110110X бөгөөд X нь унших эсвэл бичих үйлдлийг дуудахад ашигладаг (заана) (0 нь бичих үйлдлийг, 1 нь унших ажиллагааг заана), тиймээс мэдрэгчийг уншихыг хүссэн үедээ хаягийг нь 0XEA болгон ашиглаарай. Та бичихийг хүсвэл хаягийг нь 0XEB болгон ашиглаарай. Гэхдээ энэ мэдрэгчийн хувьд SDO зүү дээрх хүчдэлийн түвшинг өөрчилснөөр I2C хаягийг өөрчилж болно, хэрэв та GND -ийг энэ зүү дээр хэрэглэвэл хаяг b01110110X байх бөгөөд хэрэв та энэ зүү дээр VCC ашиглавал хаяг явж байна. b01110111X байхын тулд энэ мэдрэгч дэх I2C модулийг идэвхжүүлэхийн тулд та мэдрэгчийн CSB зүү дээр VCC түвшинг ашиглах ёстой, эс тэгвээс энэ нь зөв ажиллахгүй болно.

BMP280 -ийн хувьд үүнийг ажиллуулахын тулд зөвхөн хоёр регистрийг тохируулах ёстой байсан бөгөөд ctrl_meas регистр - 0XF4 хаяг (өгөгдөл цуглуулах сонголтыг тохируулахын тулд) ба тохиргооны бүртгэл - 0XF5 хаяг (хурдыг тохируулахын тулд, шүүлтүүр ба мэдрэгчийн интерфэйсийн сонголтууд).

Тохиргооны ажлаа хийж дууссаны дараа үнэхээр чухал зүйл болох цаг болжээ, өгөгдөл өөрөө, энэ тохиолдолд хүссэн мэдээлэл нь 0XF7 ба 0XFC регистрүүдийн хооронд явагддаг. Температур ба даралтын утга хоёулаа 2 -ийн нэмэлт хэлбэрээр кодлогдсон гурван байтаас бүрддэг бөгөөд энэ нь утга учиртай байхын тулд уншсан өгөгдлийг хөрвүүлэх ёстой гэсэн үг юм (эдгээр зүйлийг дараа хэлэлцэх болно). Мөн энэ мэдрэгчийн хувьд илүү нарийвчлалтай байхын тулд өгөгдлийг хөрвүүлэх явцад хэд хэдэн залруулгын коэффициентүүдийг ашиглаж болох бөгөөд тэдгээр нь 0X88 ба 0XA1 регистрүүдийн хооронд байрладаг, тийм ээ, 26 байтын залруулгын коэффициент байдаг, хэрэв нарийвчлалтай бол тийм ч чухал биш, зүгээр л мартаарай, эс бөгөөс өөр арга байхгүй.

Эцэст нь хэлэхэд GPS - Tyco A1035D нь UART цувралын протокол дээр суурилдаг, ялангуяа 4800 кбит/с хурдтай, парит битгүй, өгөгдлийн 8 бит, 1 зогсолтын бит юм. Мэдээллийг синхрончлох програм хангамжаар хийгддэг цуваа протокол бөгөөд энэ нь асинхрон протокол бөгөөд энэ шинж чанараас шалтгаалан мэдээлэл дамжуулах, хүлээн авах хурд нь хамаагүй бага байдаг. Ялангуяа энэ протоколын хувьд багцууд нь эхлэх битээс эхлэх ёстой боловч зогсоох бит нь сонголттой бөгөөд багцын хэмжээ 8 бит урт байна.

GPS -ийн хувьд Tyco A1035D -ийн хувьд setDGPSport (тушаал 102) ба Query/RateControl (тушаал 103) гэсэн хоёр тохиргоог хийх шаардлагатай байсан бөгөөд эдгээр бүх мэдээлэл, нэмэлт сонголтуудыг NMEA -ийн лавлах гарын авлагаас авах боломжтой. ихэнх GPS модульд ашиглагддаг. 102 командыг дамжуулах хурд, өгөгдлийн битийн хэмжээ, парит битийн болон зогсолтын битийн орших эсэхийг тогтооход ашигладаг. 103 командыг GGA, GLL, GSA, GSV, RMC, VTG стандарт NMEA мессежүүдийн гаралтыг хянахад ашигладаг бөгөөд тэдгээрийг лавлах гарын авлагад нарийвчлан тайлбарласан болно, гэхдээ манай тохиолдолд сонгосон нь GGA байсан бөгөөд энэ нь Global гэсэн утгатай. Байршлын системийн тогтмол өгөгдөл.

GPS - TycoA1035D -ийг зөв тохируулсны дараа мэдээллийг боловсруулах боломжийг олгохын тулд зөвхөн цуваа портыг уншиж, хүлээн авсан мөрийг сонгосон параметрийн дагуу шүүх шаардлагатай болно.

Бүх мэдрэгчийн талаар шаардлагатай бүх мэдээллийг олж авсны дараа бүх зүйлийг нэг програмд нэгтгэхийн тулд нэмэлт хүчин чармайлт гаргаж, мөн цуваа холбооны номын сангуудыг ашиглав.

Алхам 3: Телеметрийн систем

Телеметрийн систем
Телеметрийн систем

Энэхүү систем нь газрын хяналт ба CanSat -ийн хооронд харилцаа холбоо тогтоох үүрэгтэй бөгөөд төслийн параметрүүдээс гадна RF -ийн дамжуулалтыг зөвхөн зарим давтамжийн зурваст зөвшөөрөгдсөн тул завгүй байдаг тул үүнийг өөр хэлбэрээр хязгаарласан болно. гар утасны үйлчилгээ гэх мэт бусад RF үйлчилгээ. Эдгээр хязгаарлалтууд нь өөр өөр бөгөөд улс орон бүрт өөр өөр байж болох тул нийтлэг хэрэглээнд зөвшөөрөгдсөн давтамжийн зурвасыг байнга шалгаж байх нь чухал юм.

Зах зээл дээр боломжийн үнээр олон тооны радио сонголтууд байдаг, эдгээр бүх системүүд нь янз бүрийн давтамжтай модуляцийн өөр өөр аргуудыг санал болгодог, учир нь энэ систем нь бидний сонголтыг 2.4 ГГц давтамжтай RF хүлээн авагч NRF24L01+-ээс бүрдсэн байсан. Автоматаар хүлээн зөвшөөрөх, автомат дамжуулах систем гэх мэт баталгаажуулах системтэй бол харилцаа холбооны сайн тогтсон протокол. Цаашилбал, зохих эрчим хүчний хэрэглээтэй бол түүний дамжуулах хурд 2Mbps хүртэл хурдтай байх боломжтой.

Тиймээс энэ дамжуулагч дээр ажиллахаасаа өмнө NRF24L01+-ийн талаар бага зэрэг танилцъя. Өмнө дурьдсанчлан энэ нь 2.4GHz дээр суурилсан радио бөгөөд үүнийг хүлээн авагч эсвэл дамжуулагч болгон тохируулж болно. Харилцаа холбоог бий болгохын тулд дамжуулагч бүрт хэрэглэгчийн тохируулж болох хаяг байгаа бөгөөд таны хэрэгцээнд нийцүүлэн 24-40 битийн урттай байж болно. Мэдээллийн гүйлгээ нь дангаар эсвэл тасралтгүй хийгдэж болох бөгөөд өгөгдлийн хэмжээ нь 1 байтаар хязгаарлагдах бөгөөд гүйлгээ бүр нь дамжуулагчийн тохиргооны дагуу хүлээн зөвшөөрөх нөхцөлийг үүсгэж магадгүй юм.

Бусад хэд хэдэн тохиргоог хийх боломжтой, тухайлбал, RF дохионы гаралтын ашиг, автоматаар дахин дамжуулах горим байгаа эсэх, хэрэв ийм хугацаа хойшлогдсон бол бусад шинж чанаруудын дунд туршилтын хэмжээг сонгож болно. Энэ төсөлд ашиг тустай байх албагүй боловч ямар нэгэн сонирхол байгаа тохиолдолд тэдгээрийг бүрэлдэхүүн хэсгийн мэдээллийн хүснэгтэд ашиглах боломжтой.

NRF24L01+ нь цуваа холбооны талаар SPI хэлээр ярьдаг тул та энэ дамжуулагчийг унших эсвэл бичихийг хүссэн үедээ SPI протоколыг ашиглаарай. SPI бол өмнө дурдсанчлан цуврал протокол бөгөөд боолуудыг сонгохдоо CHIPSELECT (CS) зүүгээр хийдэг бөгөөд бүрэн дуплекстэй хамт (эзэн ба боолын аль аль нь зэрэгцээ дамжуулж, хүлээн авах боломжтой) шинж чанартай байдаг. Энэхүү протокол нь өгөгдөл дамжуулах хурдыг илүү өндөр болгох боломжийг олгодог.

NRF24L01+ мэдээллийн хүснэгтэд энэ бүрэлдэхүүн хэсгийг унших, бичих олон тушаалуудыг өгдөг бөгөөд дотоод бүртгэлд хандах өөр өөр командууд, RX ба TX ачааны ачаалал бусад үйлдлүүдийн дунд байдаг тул хүссэн үйлдлээс хамааран тодорхой тушаал шаардлагатай байж магадгүй юм. үүнийг гүйцэтгэ. Ийм учраас дамжуулагчийн бүх боломжит үйлдлүүдийг агуулсан, тайлбарласан жагсаалт бүхий мэдээллийн хуудсыг үзэх нь сонирхолтой байх болно (бид тэдгээрийг энд жагсаахгүй, учир нь энэ зааварчилгааны гол санаа нь энэ биш юм.).

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

Бүх зүйлийг энгийн байлгахын тулд ашигласан протокол нь (дамжуулагчийн хувьд) 3 байтаас бүрдэх толгойноос бүрдэх бөгөөд дараа нь мэдрэгчийн өгөгдөл, бүх мэдрэгчийн өгөгдөл хоёр байтаас бүрдсэн тохиолдолд мэдрэгчийн өгөгдөл бүрт таних дугаар өгч эхэлжээ. 0x01 -ээс эхлэн хавирган сар дарааллаар, хоёр байт бүрт таних байт байдаг тул толгойн дарааллыг мэдрэгчийн уншилтын дагуу санамсаргүй байдлаар давтаж болохгүй. Хүлээн авагч нь дамжуулагч шиг энгийн болж дууссан бөгөөд дамжуулагчийн илгээсэн толгойг танихад л шаардлагатай протокол байсан бөгөөд хүлээн авсан байтуудыг хадгалсны дараа энэ тохиолдолд бид тэдгээрийг хадгалахын тулд вектор ашиглахаар шийдсэн юм.

Тиймээс дамжуулагчийн талаархи шаардлагатай бүх мэдлэгийг олж аваад, холбооны протоколыг тодорхойлсны дараа бүгдийг нэг кодын хэсэгт нэгтгэж, эцэст нь CanSat програмыг хийх цаг болжээ.

Алхам 4: Эрчим хүчний систем

Энэ систем нь бусад системд зөв ажиллахад шаардлагатай энергийг нийлүүлэх үүрэгтэй бөгөөд энэ тохиолдолд бид зүгээр л зай болон хүчдэлийн зохицуулагч ашиглахаар шийдсэн. Тиймээс батерейны хэмжээг хэмжихийн тулд CanSat -ийн үйл ажиллагааны зарим параметрүүдийг шинжилсэн бөгөөд эдгээр үзүүлэлтүүд нь загварыг тодорхойлох, системийг бүхэлд нь тэжээхэд шаардагдах хүчийг тодорхойлоход тусална.

CanSat хэдхэн цагийн турш асаалттай байх ёстой гэж үзээд хамгийн оновчтой нөхцөл бол CanSat -д хавсаргасан модуль, систем бүр хамгийн их гүйдэл зарцуулдаг хамгийн эрчим хүчний хэрэглээний нөхцөл байдлыг авч үзэх явдал юм. Гэсэн хэдий ч батерейны хэмжээг хэтрүүлэхгүй байх нь ухаалаг байх нь чухал бөгөөд энэ нь CanSat -ийн жингийн хязгаарлалтын улмаас тийм ч сонирхолтой биш юм.

Бүх системийн бүрэлдэхүүн хэсгүүдийн өгөгдлийн хүснэгтийг судалсны дараа системийн нийт гүйдэл ойролцоогоор 160 мАч байсан бөгөөд 10 цагийн бие даасан байдлыг харгалзан үзэхэд 1600 мАч батерей нь системийн зохих нөхцлийг хангахад хангалттай байв.

Батерейны шаардлагатай цэнэгийг мэдэж авсны дараа бие даасан байдал, хэмжээ, жин, ажиллагааны температур (CanSat -ийг пуужин дотор байлгасан л бол), хурцадмал байдал, хүч чадал зэргийг харгалзан үзэх шаардлагатай. Үүнтэй ижил зүйлийг бусад хүмүүсийн дунд илгээдэг.

Алхам 5: Бүтэц

Энэхүү төсөл нь CanSat -ийн аюулгүй байдлыг хангахад үнэхээр чухал ач холбогдолтой боловч хэдийгээр энэ төсөлд бага зэрэг хайхрамжгүй ханддаг байсан (үнэн хэрэгтээ CanSat -ийн механик хэсгийг хөгжүүлэх сонирхол тийм ч их байгаагүй, учир нь бүх гишүүд хичээллэдэг. Энэ нь цахилгаан хэрэгсэлтэй холбоотой байсан). Төслийг одоо байгаа загвар дээр үндэслэсэн л бол CanSat загварыг хэрхэн яаж гаргах талаар огт боддоггүй байсан тул цилиндр хэлбэртэй, 6, 1 см диаметртэй, 11 орчим хэмжээтэй байх ёстой., 65 см өндөр (нэг лааз содтой ижил хэмжээтэй).

Гаднах бүтцийг хийж дууссаны дараа цилиндр хэлбэрийн бүтцэд бүх самбарыг байрлуулах үүрэгтэй бэхэлгээний системд анхаарлаа хандуулж, CanSat -ийг оруулах хурдыг шингээх боломжийг бүрдүүлсэн бөгөөд энэ талаар хэсэг ярилцсаны дараа., Өндөр нягтралтай хөөсийг хүссэн хэлбэрт оруулах замаар хоёр бүтцийг холбохоор шийдсэн.

Гадна талын бүтцийг хүссэн диаметр бүхий PVC хоолой ашиглан бүтээсэн бөгөөд бүтцийг хаахын тулд зарим PVC хоолойн тагийг ашигласан болно.

Алхам 6: Дүгнэлт ба ирээдүйн бодол

CanSat -ийг туршиж үзэх шаардлагатай хэвээр байгаа бөгөөд бид пуужингийн тэмцээнд оролцохоор өргөдөл гаргаж байна (энэ нь 12 -р сард болно), мөн бүх барилгыг туулсны дараа (зарим зүйлийг дуусгах шаардлагатай хэвээр байна) ба хөгжүүлэлт Процесс, зарим хэтийн төлөв, тэмдэглэлүүд, тулалдаан, зөвлөгөө, тэр ч байтугай сайн туршлагын талаар ажиглагдсан бүх хүмүүстэй хуваалцах нь сонирхолтой байх болно гэж бид үзэж байна.

- Төслийн эхэн үе нь бүхэл бүтэн төслийн хөгжлийн хамгийн үр бүтээлтэй үе байсан бөгөөд харамсалтай нь бүлэг нь эцсийн үр дүнд нь төдийлөн сонирхолгүй хандсан нь шууд үр дүнгээ өгөөгүй эсвэл харилцаа холбоо муутай байсан байж магадгүй юм. төслөөс хэд хэдэн сайн зүйл гарч ирэв

- Трансиверийг ажиллуулахын тулд маш их хүчин чармайлт гаргасан, учир нь бүх номын санг эхнээс нь боловсруулсан бөгөөд ийм төрлийн зүйлийг туршихад хоёр өөр програм, тохиргоо шаардлагатай байдаг.

- Манай тохиолдолд бүртгэлийн тохиргоонд суурилсан микро контроллер дээр ажиллах нь хамгийн сайн санаа биш байсан бөгөөд бүх гишүүд бүлгийн бусад гишүүдийг дагаж чадаагүй нь даалгавар хуваарилах гэх мэт зарим асуудалд хүргэдэг. Бидний ашиглаж байсан микро хянагчийн олон тооны зохистой C номын сан байдаг тул эдгээр нөөцийг ашиглах нь илүү дээр байх болно, мөн Code Composer нэртэй IDE байдаг бөгөөд тэдгээр микроконтроллеруудад олон тонн нөөцийг санал болгодог.

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

Зөвлөмж болгож буй: