ዝርዝር ሁኔታ:

በአርዱዲኖ ላይ የተመሠረተ ተከታታይ አገልጋይ ተቆጣጣሪ -6 ደረጃዎች
በአርዱዲኖ ላይ የተመሠረተ ተከታታይ አገልጋይ ተቆጣጣሪ -6 ደረጃዎች

ቪዲዮ: በአርዱዲኖ ላይ የተመሠረተ ተከታታይ አገልጋይ ተቆጣጣሪ -6 ደረጃዎች

ቪዲዮ: በአርዱዲኖ ላይ የተመሠረተ ተከታታይ አገልጋይ ተቆጣጣሪ -6 ደረጃዎች
ቪዲዮ: On/OFF LED using Arduino Programming Full Video Basic To Advanced Languages #onoffledusingarduino 2024, ሀምሌ
Anonim
በአርዱዲኖ ላይ የተመሠረተ ተከታታይ ሰርቮ ተቆጣጣሪ
በአርዱዲኖ ላይ የተመሠረተ ተከታታይ ሰርቮ ተቆጣጣሪ
በአርዱዲኖ ላይ የተመሠረተ ተከታታይ ሰርቮ ተቆጣጣሪ
በአርዱዲኖ ላይ የተመሠረተ ተከታታይ ሰርቮ ተቆጣጣሪ

ይህ በአርዱዲኖ ላይ በመመርኮዝ ለበርካታ ሰርቮች ቀላል ተከታታይ መቆጣጠሪያ ነው። (የእኔ የመጀመሪያ አስተማሪም:))

በዚህ ውስጥ አብዛኛው ሥራ የመጣው ሶፍትዌሩን ከአርዲኖ ጋር እንዲነጋገር እና ውሂቡ እንዲተላለፍ ፕሮቶኮል በማዘጋጀት ነው። ስለ ሃርዴዌር ገጽታ እኔ የተጠቀምኩት ሁለት servos (Parallax standard servo እዚህ)። Sparkfun Arduino ProtoShield እና Arduino Duemilanove በ ATMEGA328 ፣ ግን አብዛኛዎቹ እነዚህ ክፍሎች በተመሳሳይ ዕቃዎች ሊተኩ ይችላሉ። ይህንን ፕሮጀክት እንደ አርአይሲ ስርዓት አካል አሰብኩ ፣ ግን ግንኙነቱን ማዋቀር ብዙ ጊዜ ፈጅቷል። ማንኛውም ማሻሻያዎች ፣ ሀሳቦች ወይም ሳንካዎች ካሉ እባክዎን አስተያየት ለመስጠት ነፃነት ይሰማዎ። አርትዕ - ይህን ከጥቂት ጊዜ በፊት ጽፌ ነበር ፣ በቅርቡ ማተም ነበረብኝ።

ደረጃ 1: የሚያስፈልጉዎት ነገሮች…

ሊያስፈልጉዎት የሚችሉ ነገሮች…
ሊያስፈልጉዎት የሚችሉ ነገሮች…
ሊያስፈልጉዎት የሚችሉ ነገሮች…
ሊያስፈልጉዎት የሚችሉ ነገሮች…

ይህንን ለመገንባት አንዳንድ ነገሮች ያስፈልጉዎታል። 1. የአርዲኖ ቦርድ (እርስዎ የመረጡት) 2. ሁለት (ወይም አንድ) servos 3. ዝላይ ሽቦዎች 4. ቪዥዋል ስቱዲዮ 2008 ኤክስፕረስ - አገናኝ (አማራጭ) 5. አርዱዲኖ አይዲኢ - አገናኝ ይቅርታ ሊኑክስ እና አፕል አድናቂዎች ፣ ፕሮግራሜ ብቻ ይሰራል ለአሁን መስኮቶች ፣ ግን አሁንም ኮዱን ሳይቀይሩ ተከታታይ ትዕዛዞችን ወደ አርዱዲኖ መላክ ይችላሉ።

ደረጃ 2 ሃርድዌርን ያገናኙ።

ሃርድዌርን ያገናኙ።
ሃርድዌርን ያገናኙ።

ለዚህ እርምጃ በጣም የተወሳሰበ ነገር የለም። አንድ ሰርቪን ከፒን 9 እና ሌላውን ከ 10 ጋር ያገናኙ።

ደረጃ 3: Arduino ን ፕሮግራም ያድርጉ

Arduino ን ፕሮግራም ያድርጉ
Arduino ን ፕሮግራም ያድርጉ

አሁን ንድፉን በአርዲኖ ላይ መስቀል ይችላሉ።

ለኮዱ ቀላል መከፋፈል እዚህ አለ - #Servo myservo ን ያካትቱ ፤ // አንድ servo Servo myservo1 ን ለመቆጣጠር servo ነገር ይፍጠሩ ፣ int incomingByte = 0 ፣ የውሂብ ቁጥር = 0 ፣ ቆጣሪ = 0 ፣ ዝግጁ = 0; // ለገቢ ተከታታይ የውሂብ ቻር ውሂብ [10]; const char ማረጋገጫ [8] = "ma11hew"; የቻር ትዕዛዝ [3]; ባዶነት ማዋቀር () {myservo.attach (9); myservo1.attach (10); Serial.begin (38400); // ተከታታይ ወደብ ይከፍታል ፣ የውሂብ መጠንን ያዘጋጃል Serial.println (“ሠላም አርዱinoኖ እዚህ!”); // የተከታታይ ወደቡን ለመለየት እንዲረዳ ታክሏል ይህ ልክ ተከታታይ ወደብ እና servos ን ያዘጋጃል። int i; ለ (i = 0; i <180; i ++) {myservo.write (i); መዘግየት (15); } myservo.write (5); ለ (i = 0; i <180; i ++) {myservo1. ጻፍ (i); መዘግየት (15); } myservo1. ጻፍ (5); } የ servos ሥራን በትክክል ለማረጋገጥ ቀላል የመጥረግ እንቅስቃሴ። ባዶነት loop () {ready = 0; ቆጣሪ = 0; ሳለ (1 == 1) {ከሆነ (Serial.read ()! = [ቆጣሪ] ያረጋግጡ)) {break; } ከሆነ (ቆጣሪ == 6) {መዘግየት (20); ትዕዛዝ [0] = Serial.read (); ትዕዛዝ [1] = Serial.read (); // ከሆነ (Serial.read () == ((ትዕዛዝ [1] * 12) % 8)) // {ዝግጁ = 1; //} Serial.println ("የተቀመጠ ትዕዛዝ"); } ቆጣሪ ++; መዘግየት (2); } ይህ ለትክክለኛው የፈቃድ ሕብረቁምፊ ተከታታይ ቋት ይፈትሻል ከዚያም ለትእዛዙ ሁለት ባይት ይይዛል። መግለጫው ጊዜያዊ ማመሳከሪያ ቢፈቅድ ግን በእጅ መገናኘትን ከባድ ያደርገዋል። እንደ ተበላሸ ውሂብ ሁኔታ ያሉ ትዕዛዞች አይተነተኑም ወደ 0 ሊዘጋጅ ይችላል። // በትእዛዞች ውስጥ ይፈልጉ (ዝግጁ == 1) {ከሆነ (ትዕዛዝ [0] == 'T') {ትዕዛዝ [0] = 0; Serial.print ("በፒን 9 ላይ የስሮትል መቆጣጠሪያ ወደ:"); Serial.println (ካርታ (ትዕዛዝ [1] ፣ 32 ፣ 126 ፣ 2 ፣ 180) ፣ ዲሲ); myservo.write (ካርታ (ትዕዛዝ [1] ፣ 32 ፣ 126 ፣ 2 ፣ 180)); } ከሆነ (ትዕዛዝ [0] == 'S') {ትዕዛዝ [0] = 0; Serial.print ("በፒን 10 ላይ የስሮትል መቆጣጠሪያ ወደ:"); Serial.println (ካርታ (ትዕዛዝ [1] ፣ 32 ፣ 126 ፣ 2 ፣ 180) ፣ ዲሲ); myservo1. ጻፍ (ካርታ (ትዕዛዝ [1] ፣ 32 ፣ 126 ፣ 2 ፣ 180)); }}} ቀሪው ኮዱ የሚዛመደው ቀጣዩን ባይት ወስዶ ወደ አገልጋዩ ከላከው ለትክክለኛ ትዕዛዞች (ቲ ወይም ኤስ) ትዕዛዙን መፈለግ ነው። በካርታው ላይ ተጨማሪ (ትዕዛዝ [1] ፣ 32 ፣ 126 ፣ 2 ፣ 180) በኋላ… እዚህ እዚህ ኮዱ ለሚፈልጉት ሁሉ ሊሰፋ የሚችል ነው (ለምሳሌ። መብራቶች ፣ ሞተሮች ፣ አይአር ፣ ወዘተ) ይህ ኮድ በጥሩ ሁኔታ መሥራት አለበት ማሻሻያዎች።

ደረጃ 4: ሶፍትዌር ጫን

ሶፍትዌር ጫን
ሶፍትዌር ጫን

ይህንን ለመጫን ሁለት መንገዶች አሉኝ… nsis installer: ከዚህ በታች ራስን የማውጣት ጫlerውን ያውርዱ እና ያሂዱ። በመጫን ጊዜ ምንጮችን የመጫን አማራጭ ይኖርዎታል። ጫ instalው የሁለትዮሽ እሽግ አስቀድሞ c / dlls ን በኮምፒተር ላይ ማስኬድ ስለሚችል አስቀድሞ ሲጫን በኮምፒተር ላይ ሊሠራ ይችላል። ጫ instalው ከጨረሰ በኋላ ከዴስክቶፕ ላይ ማስጀመር ወይም ምናሌ መጀመር ይችላሉ። zip way (ያልተረጋገጠ): ያውርዱ እና ያሂዱ ፣ መስራት አለበት። ምን አልባት. (የዚፕ ማህደሩ በአጫler የተፈጠረ ተመሳሳይ የአቃፊ መዋቅር አለው ፣ ያለ ምንጮች። እሱ እንዳይሠራ ለመፈተሽ የእይታ ስቱዲዮ የሌለው ማሽን የለኝም።)

ደረጃ 5 - በይነገጽ ፕሮግራሙን ይጠቀሙ

በይነገጽ ፕሮግራሙን ይጠቀሙ
በይነገጽ ፕሮግራሙን ይጠቀሙ
በይነገጽ ፕሮግራሙን ይጠቀሙ
በይነገጽ ፕሮግራሙን ይጠቀሙ

ፕሮግራሙን ለመጠቀም በመጀመሪያ በአርዱዲኖ ንድፍ ውስጥ የተገለጸውን የባውድ መጠን ይምረጡ። ያልተቀየረው ንድፍ ወደ 38400 ባውድ ነባሪዎች ግን እንደ ቀርፋፋ የሬዲዮ አገናኝ ላሉት ነገሮች ፍላጎቶችዎ ሊስማማ ይችላል። ማሳሰቢያ -ከ 38400 ከፍ ያለ የባውድ ተመኖች በጣም የተረጋጉ አልነበሩም ፣ ይህ የሆነው ውሂቡ ከመሰራቱ በፊት uart ስለሚሞላ ይመስለኛል። በመቀጠል ለመጠቀም የ COM ወደብ ይምረጡ። ፕሮግራሙ ለ COM4 ነባሪዎች እሱን መለወጥዎን እርግጠኛ ይሁኑ ወይም ፕሮግራሙ ይሰናከላል። በመጨረሻም ክፈት የሚለውን ጠቅ ያድርጉ። ሁሉም መልካም ከሆነ ፕሮግራሙ የተመረጠውን ተከታታይ ወደብ በተመረጠው የባውድ ተመን ይከፍታል። ካልሆነ ፕሮግራሙ ባልተጠበቀ ሁኔታ ሊወድቅ ይችላል። ወደቡ ትክክል መሆኑን ያረጋግጡ እና እንደገና ይሞክሩ። ቀጥተኛ ትዕዛዞችን ለአርዲኖ ለማቅረብ የጽሑፍ ሳጥኖቹን ይጠቀሙ። “ካርታው (ትዕዛዙ [1] ፣ 32 ፣ 126 ፣ 2 ፣ 180)” ሁሉንም 94 ሊሆኑ የሚችሉ ትዕዛዞችን ፣ * ቦታ * እስከ ~ ድረስ ፣ በ ASCII ውስጥ በአርዲኖ እስከ 2 እስከ 180 ድረስ ለ servo ሊነበብ ይችላል። ማንኛውም ባይት ከ ASCII 32 (ቦታ) ወይም ከ 126 (~) በላይ ነባሪዎች ወደ 63 (?) የትራክ አሞሌዎች ቀጥታ ትዕዛዞችን የአናባቢ በይነገጽን ይሰጣሉ። እያንዳንዱ እርምጃ ተከታታይ ትዕዛዙን ወደ አርዱዲኖ ይልካል።

ደረጃ 6 - ፈጠራን ያግኙ

ፈጠራን ያግኙ!
ፈጠራን ያግኙ!
ፈጠራን ያግኙ!
ፈጠራን ያግኙ!

በዚህ ለማድረግ አሪፍ ነገሮችን ያስቡ። አንዳንድ ሀሳቦች - 1. ለመኪና የርቀት ስሮትል። 2. 3 ዲ ካሜራ ተራራ 3. የውሃ ውስጥ ሮቨር ይዝናኑ !!

የሚመከር: