ዝርዝር ሁኔታ:

ዚቦ ዚንክ -7000 ቦርድ በመጠቀም Quadcopter: 5 ደረጃዎች
ዚቦ ዚንክ -7000 ቦርድ በመጠቀም Quadcopter: 5 ደረጃዎች

ቪዲዮ: ዚቦ ዚንክ -7000 ቦርድ በመጠቀም Quadcopter: 5 ደረጃዎች

ቪዲዮ: ዚቦ ዚንክ -7000 ቦርድ በመጠቀም Quadcopter: 5 ደረጃዎች
ቪዲዮ: ባሌ የልጅ ፍቅርኛ ሆኑ አገኛሁት 😥ዚቦ ከባሎ ጋር 2024, ሀምሌ
Anonim
ዚቦ ዚንክ -7000 ቦርድ በመጠቀም ኳድኮፕተር
ዚቦ ዚንክ -7000 ቦርድ በመጠቀም ኳድኮፕተር

እኛ ከመጀመራችን በፊት ለፕሮጀክቱ የሚፈልጓቸው አንዳንድ ነገሮች እዚህ አሉ-ክፍሎች ዝርዝር 1x ዲጂልት ዚቦ ዚንክ -7000 ቦርድ 1x ኳድኮፕተር ፍሬም ዚቦ (ተራማጅ ማያያዣ አዶቤ Illustrator ፋይል ተያይ attachedል) 4x Turnigy D3530/14 1100KV Brushless Motors 4x Turnigy ESC Basic -18A የፍጥነት መቆጣጠሪያ 4x Propellers (እነዚህ ባለአራትኮፕተርዎን ለማንሳት በቂ መሆን አለባቸው) 2x nRF24L01+ transceiver 1x IMU BNO055 የሶፍትዌር መስፈርቶች Xilinx Vivado 2016.2 ማሳሰቢያ: ከላይ ያሉት ሞተሮች ጥቅም ላይ ሊውሉ የሚችሉት ሞተሮች ብቻ አይደሉም። በዚህ ፕሮጀክት ውስጥ ጥቅም ላይ የዋሉት እነሱ ብቻ ናቸው። ለተቀሩት ክፍሎች እና የሶፍትዌር መስፈርቶች ተመሳሳይ ነው። ተስፋ እናደርጋለን ፣ ይህ አስተማሪውን በሚያነቡበት ጊዜ ያልተነገረ ግንዛቤ ነው።

ደረጃ 1 የ PWM ሞዱል ሩጫ ያግኙ

የግብዓት መቀየሪያዎችን በመጠቀም የኤችአይ ስሮትል እና የ LO ስሮትል ለማስመዝገብ ቀለል ያለ SystemVerilog (ወይም ሌላ የኤችዲኤል ፕሮግራም) ፕሮግራም ያድርጉ። PWM ን በአንድ ESC እና Turnigy Brushless Motor ጋር መንጠቆ። ESC ን እንዴት ማስተካከል እንደሚቻል ለማወቅ የሚከተሉትን ፋይሎች ይፈትሹ የመጨረሻው ኮድ ለ PWM ሞዱል በደረጃ 5 ተያይ attachedል። በዚህ ደረጃ የ PWM ማስጀመሪያ ተያይ isል የኢሲ የውሂብ ሉህ - Turnigy ESC የውሂብ ሉህ ፒዲኤፍ (ትኩረት ሊሰጣቸው የሚገቡ ነገሮች ኤችአይ እና ሎ ስሮትል በመጠቀም መምረጥ የሚችሏቸው የተለያዩ ሁነታዎች ናቸው)

ደረጃ 2 የማገጃውን ንድፍ ያዘጋጁ

የማገጃ ዲዛይን ፍጠር አዲስ የተፈጠረውን የማገጃ XPS ቅንብሮችን እዚህ የወረዱትን ጠቅ ያድርጉ-https://github.com/ucb-bar/fpga-zynq/tree/master/z… ኦ ፒን ኢተርኔት 0 ዩኤስቢ 0 ኤስዲ 0 SPI 1 UART 1 I2C 0 TTC0 SWDT GPI MIOMIO ውቅር ቆጣሪ 0 WatchdogClock ውቅረት FCLK_CLK0 እና ድግግሞሽ ወደ 100 ሜኸዝ ያድርጉ I2C እና SPI ውጫዊ ግንኙነት FCLK_CLK0 ን ወደ M_AXI_GP0_ACLK አሂድ አግድ አውቶማቲክ

ደረጃ 3 - IMU ን ያስተካክሉ

ኢምዩውን ይለኩ
ኢምዩውን ይለኩ

የ BNO055 አስተላላፊ I2C ግንኙነትን ይጠቀማል። (ለጀማሪው የተጠቆመ ንባብ https://learn.sparkfun.com/tutorials/i2c) አይኤምአውን የሚያሄድ ሾፌሩ እዚህ ይገኛል https://github.com/BoschSensortec/BNO055_driverA quadcopter መግነጢሳዊውን ከ BNO055። በዚህ ምክንያት አስፈላጊው የአሠራር ሁኔታ የ IMU ሞድ ነው። ‹X› ‹ግድ የለሽ› ባለበት የሁለትዮሽ ቁጥር xxxx1000 ወደ OPR_MODE መዝገብ በመጻፍ ይለወጣል። እነዚያን ቁርጥራጮች ወደ 0 ያዘጋጁ።

ደረጃ 4 - ሽቦ አልባ አስተላላፊውን ያዋህዱ

ሽቦ -አልባ አስተላላፊውን ያዋህዱ
ሽቦ -አልባ አስተላላፊውን ያዋህዱ
ሽቦ -አልባ አስተላላፊውን ያዋህዱ
ሽቦ -አልባ አስተላላፊውን ያዋህዱ

ሽቦ አልባ አስተላላፊው የ SPI ግንኙነትን ይጠቀማል። ለ nRF24L01+ ጥሩ የማጠናከሪያ ትምህርት በ nrf24l01+ ላይ ግን ከአርዱዲኖ ጋር ተያይ

ደረጃ 5 የዚቦ ኤፍፒጂኤን ፕሮግራም ያድርጉ

እነዚህ ሞጁሎች ለ quadcopter's PWM ቁጥጥር የሚያገለግሉ የመጨረሻ ሞጁሎች ናቸው። motor_ctl_wrapper.sv ዓላማ: መጠቅለያው በኡለር ማዕዘኖች እና በስሮትል መቶኛ ይወስዳል። ኳድኮፕተር እንዲረጋጋ የሚያስችለውን ካሳ PWM ያወጣል። ይህ እገዳ አለ ፣ ምክንያቱም አራት ማዕዘኖች በአየር ውስጥ ለረብሻዎች የተጋለጡ እና አንድ ዓይነት ማረጋጊያ ስለሚፈልጉ። ጂምባል መቆለፊያ ሊያስከትሉ በሚችሉ ፊሊፕስ ወይም በከባድ ማዕዘኖች ላይ እቅድ ስላልያዝን የዩለር ማዕዘኖችን እየተጠቀምን ነው። ግቤት 25 ቢት የውሂብ አውቶቡስ CTL_IN = {[24] GO ፣ [23:16] Euler X ፣ [15: 8] Euler Y ፣ [7: 0] ስሮትል ፐርሰንት} ፣ ሰዓት (ክሊክ) ፣ የተመሳሰለ CLR (sclr) ውጤት - ሞተር 1 PWM ፣ ሞተር 2 PWM ፣ ሞተር 3 PWM ፣ ሞተር 4 PWM ፣ ስሮትል መቶኛ PWM ስሮትል መቶኛ PWM ነው ንፁህ የ 30% - 70% የ PWM ክልል የሚፈልግ ESC ን ለማስጀመር የሚያገለግል ፣ ከሞተር 1-4 PWM እሴቶች የተሻሻለ - የተራቀቀ - ቪቫዶ ዚንክ አይፒ ብሎኮች 8 ያክላል (LUTs) 3 ንዑስ (LUTs) 5 ብዙ ማባዣዎች (ማህደረ ትውስታን አግድ (BRAM)) clock_div.sv (AKA pwm_fsm.sv) ዓላማው - ለሞተር_ctl_wrapper MUX ፣ PWM ውፅዓት እና sclr ን ጨምሮ ሃርድዌርን ይቆጣጠሩ። ማንኛውም የፊኒቲ ስቴት ማሽን (ኤፍኤስኤም) ለአንድ ነገር ጥቅም ላይ ይውላል -ሌላ ሃርድዌር ይቆጣጠሩ። ከዚህ ዓላማ ማንኛውም ትልቅ ማፈግፈግ የተጠረጠረውን FSM ሌላ ዓይነት ሞጁል (መልክ ፣ ቆጣሪ ፣ አድደር ፣ ወዘተ) መልክ እንዲይዝ ሊያደርግ ይችላል። pwm_fsm 3 ግዛቶች አሉት - INIT ፣ CLR እና FLYINIT ፦ ተጠቃሚው ESC ን እንደ ተፈላጊ። ለሁሉም ሞተሮች ቀጥታ PWM ን ለሚያወጣው ለ mux_pwm የተመረጠ ምልክት ይልካል። GO == '1'CLR: በ motor_ctl_wrapper እና በ pwm out ሞዱል ውስጥ ያለውን ውሂብ ያፅዱ። ፍጥነት ፦ ባለአራት መቆጣጠሪያውን (እኛ ዳግም ካልተጀመርን) ለማረጋጋት ለዘላለም ይፈልጉ። የተከፈለው PWM ን በ mux_pwm በኩል ይልካል። ግቤት ፣ ሂድ ፣ ዳግም ማስጀመር ፣ clk ውፅዓት ፦ RST ለሌላ ሞዱል ዳግም ማስጀመሪያዎች ፣ ሙሉ ፍላይት የ FLY ሁነታን ለማሳየት ፣ atmux_pwm.sv ን የሚያሄድበት ጊዜ ዓላማ።:

የሚመከር: