ዝርዝር ሁኔታ:

የኤሌክትሮኒክስ ሻጭ እያታለለዎት ወይም እንዳልሆነ የሚናገር ሮቦት 6 ደረጃዎች
የኤሌክትሮኒክስ ሻጭ እያታለለዎት ወይም እንዳልሆነ የሚናገር ሮቦት 6 ደረጃዎች

ቪዲዮ: የኤሌክትሮኒክስ ሻጭ እያታለለዎት ወይም እንዳልሆነ የሚናገር ሮቦት 6 ደረጃዎች

ቪዲዮ: የኤሌክትሮኒክስ ሻጭ እያታለለዎት ወይም እንዳልሆነ የሚናገር ሮቦት 6 ደረጃዎች
ቪዲዮ: የስርጭት ትራንስፎርመር፣ የአይኢኢሲ ደረጃ፣ የኤሌክትሪክ ኃይል ትራንስፎርመር ቻይና አምራች፣ ዋጋ 2024, ህዳር
Anonim
የኤሌክትሮኒክስ ሻጭ እያታለለዎት እንደሆነ ወይም እንዳልሆነ የሚናገር ሮቦት
የኤሌክትሮኒክስ ሻጭ እያታለለዎት እንደሆነ ወይም እንዳልሆነ የሚናገር ሮቦት

ባለፈው ዓመት እኔ እና አባቴ እኛ ወደምንኖርበት በጣም ቅርብ ወደ አዲስ የተከፈተ ሮቦት/ኤሌክትሮኒክስ መደብር ሄድን። ወደዚያ ስገባ በኤሌክትሮኒክስ ፣ በሴሮቭስ ፣ በመዳሰሻዎች ፣ በ Raspberry pis እና በአርዲኖዎች የተሞላ ነበር። በሚቀጥለው ቀን እኛ ወደ አንድ ሱቅ ሄደን ብዙ ሴናሮች እና 3 አርዱኢኖዎች ወደ 150 ዶላር ገዙ። ወደ ቤት እንደሄድኩ ከአርዱዲኖ ሜጋ በስተቀር ሌሎች ምርቶች አልሠሩም። እኛ በ 130 ዶላር ተጭበርብረናል ይህም ብዙ ነው።

ስለዚህ ፣ ወደ 12 ዳሳሾች እና 2 ሞተሮች (አሁንም በስርዓቱ ላይ እየሰራ) የሚሞክር እና ምርቱ የተሳሳተ መሆኑን ሊወስን የሚችል ሮቦት ለመፍጠር ወሰንኩ።

በቀጥታ ወደ እሱ እንግባ!

አቅርቦቶች

1. አርዱዲኖ UNO

2. 2.4 ኢንች TFT ንኪ ማያ ገጽ ማሳያ

3. የሁለት ዝላይ ሽቦዎች

እርስዎ እንዲሞክሯቸው 4. ዳሳሾች እና ሞተሮች (እዚህ እኔ ተጠቀምኩ - የእንቅስቃሴ ዳሳሽ ፣ MQ6 ጋዝ ዳሳሽ ፣ የድምፅ ዳሳሽ ፣ ፖታቲሜትር እና የውሃ ደረጃ ዳሳሽ)

ደረጃ 1: እንዴት እንደሚሰራ…

Image
Image

ከ TFT ማሳያ ጋር በይነገጽ ለመፍጠር እና በይነተገናኝ በይነገጽ ለመፍጠር አርዱኢኖ ፕሮግራም አድርጌያለሁ። እንደምናውቀው ፣ የ TFT ማሳያ አንድ ነፃ ፒን ማለትም የ A5 ፒን ብቻ አለው። (UNO ን የሚጠቀሙ ከሆነ)። ስለዚህ መረጃን ለማንበብ የአናሎግ ፒኖችን የሚጠቀም ማንኛውም ዳሳሽ ከዚህ ቅንብር ጋር ተኳሃኝ ነው…

በይነገጽ ውስጥ ፣ የዴስክቶፕ ዳራውን ቀለም መለወጥ ይችላሉ ፣ እና ዳሳሾችን ለመፈተሽ በእኔ በኩል ለአርዲኖ የተዘጋጀውን መተግበሪያ መክፈት ይችላሉ።

መተግበሪያውን ሲከፍቱ 2 አማራጮችን ፣ ግቤት እና ውጽዓት ማየት ይችላሉ። ስለዚህ ግቤት ላይ ጠቅ ካደረጉ ፣ 4 ዳሳሾችን ያሳያል (እሱ ከ 12 ጋር ተኳሃኝ ነው ፣ ግን ፈተናዎች እየቀረብኩኝ ስለሆነ ገና ፕሮግራሙን አላቀናብርም።.

እና የእርስዎ የ servo ሞተር ስራዎች በመያዣው ውስጥ ያገናኙት እንደሆነም ሊፈትሽ ይችላል።

ይመልከቱ

ደረጃ 2 - ኮዱን በመስቀል ላይ

ኮዱ በ 50 ሰዓት ገደማ ውስጥ በጥንቃቄ ኮድ ያደረግሁት የ 600 መስመር ፕሮግራም ነው። እሱ ጥቂት ሳንካዎች አሉት ስለዚህ plz ያስተካክሉት እና በደብዳቤዬ ይላኩልኝ ([email protected])።

ኮዱን ይስቀሉ እና የ TFT ጋሻውን ከአርዱዲኖ ጋር ያገናኙ። በተሻለ ሁኔታ እንዲንጠለጠሉበት በይነገጽ እንዲጫወቱ እመክራለሁ።

ኮዱ ፦

#ያካትቱ

#አካት #አካትት #አካትት #ዲፊን ኤልሲዲ_ሲኤስኤስ A3 #ዲፊን LCD_CD A2 #ዲፊን LCD_WR A1 #ዲፊን LCD_RD A0 #ዲፊን LCD_RESET A4 #ዲፊን ጥቁር 0x0000 #ዲፊን BLUE 0x001F #define NAVY 0xFF00FE0EFE0EFE 0EFE0EFE0XFF07FF #መግለፅ MAGENTA 0xF81F #መግለፅ ቢጫ 0xFFE0 #መግለፅ WHITE 0xFFFF #define LIGHTGREY 0xC618 #ጥርት PXPLE 0x780F #ገላጭ OLIVE 0x7BE0 #ዲፊን ምርጫ #ዲኤፍኤንኤፍ #6F #EF #1F #Ede #MF_EF #1F 160 #ጥራት TS_MAXX 160 #ጥራት TS_MAXY 970 TouchScreen ts = TouchScreen (XP ፣ YP ፣ XM ፣ YM ፣ 300) ፤ Adafruit_TFTLCD tft (LCD_CS ፣ LCD_CD ፣ LCD_WR ፣ LCD_RD ፣ LCD_RESET) ፤ #መግለፅ BOXSIZE 40 #ገላጭ PENRADIUS 3 #መግለፅ MINPRESSURE 10 #መግለፅ MAXPRESSURE 1000 int sound; የቻር ግዛት = 6; int touch = 0; int ቀለም = ጥቁር; int redir = 0; intta; ባዶነት ማዋቀር () {Serial.begin (9600); tft.reset (); tft.setFont (& FreeMonoBoldOblique12pt7b); tft.begin (0x9325); tft.setRotation (45); tft.setTextSize (0.5); tft.fillScreen (ነጭ); tft.setCursor (60, 160); tft.setTextColor (ጥቁር); tft.print ("ለመግባት ያንሸራትቱ"); } ባዶነት loop () {float sensorVoltage; ተንሳፋፊ ዳሳሽ እሴት; TSPoint p = ts.getPoint (); pinMode (ኤክስኤም ፣ ውፅዓት); pinMode (YP ፣ ውፅዓት); ከሆነ (pz> MINPRESSURE && pz 240 && px 130 && py 240 && px 20 && py 240 && px 20 && py 160 && px 12 && py 240 && px 20 && py 240 && px 20 && py 40 && px 15 && 150 && px 40 && py 150 && px 80 && py 150 && px 120 && py 150 && px 170 && py 90 && px 40 && py 90 && px 80 && py 90 && px 120 && 150 170 && py 150 && px 170 && py 150 && px 170 && py 150 && px 170 && py 100 && px 20 && py 200 && px 100 && py 100 && px 20 && py 100 && px 20 && py 100 && px 20 && py <100) {touch = 26; }} ከሆነ (ይንኩ == 1 && state == 6) {tft.setRotation (0); tft.fillScreen (ቀለም); ድምጽ = 0; tft.fillRect (200 ፣ 180 ፣ 80 ፣ 140 ፣ ነጭ); tft.drawRect (201 ፣ 181 ፣ 81 ፣ 141 ፣ ጥቁር); tft.fillRect (80 ፣ 30 ፣ 100 ፣ 100 ፣ ሲያን); tft.drawRect (81 ፣ 31 ፣ 101 ፣ 101 ፣ ጥቁር); tft.fillRect (10, 30, 50, 100, NAVY); tft.drawRect (11 ፣ 31 ፣ 51 ፣ 101 ፣ ጥቁር); tft.fillRect (10 ፣ 180 ፣ 30 ፣ 120 ፣ PURPLE) ፤ tft.drawRect (11, 181, 31, 121 ፣ ጥቁር); tft.fillRect (45 ፣ 180 ፣ 30 ፣ 120 ፣ BLUE); tft.drawRect (46 ፣ 181 ፣ 31 ፣ 121 ፣ ጥቁር); tft.fillRect (80 ፣ 180 ፣ 30 ፣ 120 ፣ CYAN); tft.drawRect (81 ፣ 181 ፣ 31 ፣ 121 ፣ ጥቁር); tft.fillRect (115 ፣ 180 ፣ 30 ፣ 120 ፣ አረንጓዴ); tft.drawRect (116 ፣ 181 ፣ 31 ፣ 121 ፣ ጥቁር); tft.fillRect (150 ፣ 180 ፣ 30 ፣ 120 ፣ ቢጫ); tft.drawRect (151 ፣ 181 ፣ 31 ፣ 121 ፣ ጥቁር); tft.fillTriangle (210, 30, 210, 50, 220, 40, WHITE); tft.fillRect (200 ፣ 35 ፣ 12 ፣ 12 ፣ ነጭ); tft.drawTriangle (210 ፣ 30 ፣ 210 ፣ 50 ፣ 220 ፣ 40 ፣ ጥቁር); tft.drawRect (200 ፣ 35 ፣ 12 ፣ 12 ፣ ጥቁር); tft.drawCircle (210 ፣ 40 ፣ 14 ፣ ነጭ); //tft.fillTriange (a1, b1, a2, b2, c1, c2, RED); tft.setRotation (45); tft.setCursor (200 ፣ 20); tft.print ("ቅንብሮች"); tft.fillRoundRect (45 ፣ 75 ፣ 75 ፣ 75 ፣ 4 ፣ ነጭ ፣ ነጭ); tft.drawRoundRect (45 ፣ 75 ፣ 75 ፣ 75 ፣ 4 ፣ ጥቁር); tft.fillRect (75 ፣ 75 ፣ 15 ፣ 30 ፣ ጥቁር); tft.fillRect (75 ፣ 120 ፣ 15 ፣ 30 ፣ ጥቁር); tft.fillRect (90 ፣ 105 ፣ 30 ፣ 15 ፣ ጥቁር); tft.fillRect (45 ፣ 105 ፣ 30 ፣ 15 ፣ ጥቁር); ግዛት = 7; ንክኪ = 0; ota = 0; } ከሆነ (ይንኩ == 2) {tft.fillScreen (WHITE); tft.setRotation (0); tft.fillTriangle (210, 30, 210, 50, 220, 40, WHITE); tft.fillRect (200 ፣ 35 ፣ 12 ፣ 12 ፣ ነጭ); tft.drawTriangle (210 ፣ 30 ፣ 210 ፣ 50 ፣ 220 ፣ 40 ፣ ጥቁር); tft.drawRect (200 ፣ 35 ፣ 12 ፣ 12 ፣ ጥቁር); tft.drawCircle (210 ፣ 40 ፣ 14 ፣ ጥቁር); tft.setRotation (45); tft.fillTriangle (270 ፣ 40 ፣ 270 ፣ 20 ፣ 260 ፣ 30 ፣ ጥቁር); tft.drawLine (300 ፣ 30 ፣ 270 ፣ 30 ፣ ጥቁር); tft.setCursor (20, 200); tft.print ("ግላዊነት ማላበስ"); tft.setCursor (20, 170); tft.print ("ዘግተው ይውጡ"); tft.setCursor (20, 140); tft.print ("ተጓipች"); tft.setCursor (20, 110); tft.print ("ስለ"); ንክኪ = 1; ግዛት = 2; } ከሆነ (ይንኩ == 10 && state == 2) {tft.fillScreen (WHITE); tft.setCursor (10, 160); tft.setTextColor (ጥቁር); tft.print ("የተፈጠረ እና የተገነባ"); tft.setCursor (100, 190); tft.print ("በ:"); tft.setCursor (60, 220); tft.print ("ታዳጊ ከህንድ"); tft.setRotation (0); tft.fillTriangle (210, 30, 210, 50, 220, 40, WHITE); tft.fillRect (200 ፣ 35 ፣ 12 ፣ 12 ፣ ነጭ); tft.drawTriangle (210 ፣ 30 ፣ 210 ፣ 50 ፣ 220 ፣ 40 ፣ ጥቁር); tft.drawRect (200 ፣ 35 ፣ 12 ፣ 12 ፣ ጥቁር); tft.drawCircle (210 ፣ 40 ፣ 14 ፣ ጥቁር); tft.setRotation (45); tft.fillTriangle (270 ፣ 40 ፣ 270 ፣ 20 ፣ 260 ፣ 30 ፣ ጥቁር); tft.drawLine (300 ፣ 30 ፣ 270 ፣ 30 ፣ ጥቁር); ግዛት = 6; } ከሆነ (ይንኩ == 11 && state == 2) {tft.fillScreen (WHITE); tft.setCursor (60, 40); tft.print ("ምረጥ"); tft.setCursor (40, 60); tft.print ("የጀርባ ቀለም"); tft.fillRect (60 ፣ 180 ፣ 45 ፣ 45 ፣ ቀይ); tft.fillRect (120 ፣ 180 ፣ 45 ፣ 45 ፣ ቢጫ); tft.fillRect (180 ፣ 180 ፣ 45 ፣ 45 ፣ BLUE); tft.fillRect (240 ፣ 180 ፣ 45 ፣ 45 ፣ አረንጓዴ); tft.fillRect (60 ፣ 130 ፣ 45 ፣ 45 ፣ MAGENTA); tft.fillRect (120 ፣ 130 ፣ 45 ፣ 45 ፣ NAVY); tft.fillRect (180 ፣ 130 ፣ 45 ፣ 45 ፣ LIGHTGREY); tft.fillRect (240 ፣ 130 ፣ 45 ፣ 45 ፣ CYAN); tft.fillRect (60 ፣ 80 ፣ 45 ፣ 45 ፣ ነጭ); tft.drawRect (60 ፣ 80 ፣ 45 ፣ 45 ፣ ጥቁር); tft.fillRect (120 ፣ 80 ፣ 45 ፣ 45 ፣ ጥቁር); tft.fillRect (180 ፣ 80 ፣ 45 ፣ 45 ፣ OLIVE); tft.fillRect (240 ፣ 80 ፣ 45 ፣ 45 ፣ PURPLE); tft.setRotation (0); tft.fillTriangle (210, 30, 210, 50, 220, 40, WHITE); tft.fillRect (200 ፣ 35 ፣ 12 ፣ 12 ፣ ነጭ); tft.drawTriangle (210 ፣ 30 ፣ 210 ፣ 50 ፣ 220 ፣ 40 ፣ ጥቁር); tft.drawRect (200 ፣ 35 ፣ 12 ፣ 12 ፣ ጥቁር); tft.drawCircle (210 ፣ 40 ፣ 14 ፣ ጥቁር); tft.setRotation (45); tft.fillTriangle (270 ፣ 40 ፣ 270 ፣ 20 ፣ 260 ፣ 30 ፣ ጥቁር); tft.drawLine (300 ፣ 30 ፣ 270 ፣ 30 ፣ ጥቁር); ግዛት = 6; ከሆነ (redir == 1) {color = WHITE; } ከሆነ (redir == 2) {color = BLACK; } ከሆነ (redir == 3) {color = OLIVE; } ከሆነ (redir == 4) {color = PURPLE; } ከሆነ (redir == 5) {color = MAGENTA; } ከሆነ (redir == 6) {color = NAVY; } ከሆነ (redir == 7) {color = LIGHTGREY; } ከሆነ (redir == 8) {color = CYAN; } ከሆነ (redir == 9) {color = RED; } ከሆነ (redir == 10) {color = YELLOW; } ከሆነ (redir == 11) {color = BLUE; } ከሆነ (redir == 12) {color = GREEN; }} ከሆነ (ይንኩ == 26) {ota = 1; tft.fillScreen (ነጭ); tft.setRotation (0); tft.fillTriangle (210, 30, 210, 50, 220, 40, WHITE); tft.fillRect (200 ፣ 35 ፣ 12 ፣ 12 ፣ ነጭ); tft.drawTriangle (210 ፣ 30 ፣ 210 ፣ 50 ፣ 220 ፣ 40 ፣ ጥቁር); tft.drawRect (200 ፣ 35 ፣ 12 ፣ 12 ፣ ጥቁር); tft.drawCircle (210 ፣ 40 ፣ 14 ፣ ጥቁር); tft.setRotation (45); tft.fillTriangle (270 ፣ 40 ፣ 270 ፣ 20 ፣ 260 ፣ 30 ፣ ጥቁር); tft.drawLine (300 ፣ 30 ፣ 270 ፣ 30 ፣ ጥቁር); tft.setRotation (1); tft.setCursor (30, 80); tft.print ("ግቤት"); tft.setCursor (30, 150); tft.print ("ውፅዓት"); tft.drawRect (25 ፣ 130 ፣ 90 ፣ 30 ፣ ጥቁር); tft.drawRect (25 ፣ 60 ፣ 90 ፣ 30 ፣ ጥቁር); (p.x> 190 && p.x 30 && p.y <90) {tft.setCursor (150 ፣ 220) ፤ tft.print ("የውሃ ደረጃ"); tft.setCursor (150, 170); tft.print ("የጋዝ ደረጃ"); tft.setCursor (150, 120); tft.print ("ርቀት"); tft.setCursor (150, 70); tft.print ("ድምጽ"); ንክኪ = 1; ግዛት = 2; }}} እያለ (ድምጽ == 1) {tft.fillScreen (WHITE); sensorValue = analogRead (A5); sensorVoltage = sensorValue; tft.setCursor (60, 160); tft.print (sensorVoltage); Serial.println ("የድምፅ ደረጃ ="); Serial.println (sensorVoltage); መዘግየት (1000); ከሆነ (ድምጽ == 0) {ሰበር; }}}}

ደረጃ 3 ፦ ቤተመጻሕፍት ያስፈልጋል ፦

  • Adafruit_GFX.h
  • Adafruit_TFTLCD.h
  • TouchScreen.h

የ Github አገናኞች ለተመሳሳይ

github.com/adafruit/Afadfruit-GFX- Library

github.com/adafruit/TFTLCD- ቤተ-መጽሐፍት

github.com/adafruit/Adafruit_TouchScreen

ደረጃ 4 - ግንኙነቶች

ሁሉንም በጥፊ ይምቱ
ሁሉንም በጥፊ ይምቱ

6 ዝላይ ሽቦዎች ያስፈልግዎታል። 3 ወንዶች እና 3 ሴቶች። በቀጥታ ለአርዱዲኖ ቦርድ በዚህ መንገድ ይሸጡዋቸው-

ደረጃ 5 ሁሉንም በጥፊ ይምቱ

ሽቦዎቹን ወደ አርዱዲኖ ውስጥ ያስገቡ (ምስሉን ይመልከቱ) ፣ አስፈላጊ ከሆነ አንዳንድ ሙጫ ጠመንጃ ይጠቀሙ…

ከዚያ የ TFT ጋሻውን ያያይዙ እና ከዚያ የእርስዎን ዳሳሾች ይፈትሹ።

እስከ ታች ድረስ በማሸብለልዎ እናመሰግናለን። ይህ ፕሮጀክት ልዩ እና አጋዥ እንደሆነ ከተሰማዎት ለእኔ ድምጽ መስጠቱን ያረጋግጡ

ደስተኛ ማድረግ እና ከኤሌክትሮኒክስ አጭበርባሪዎች ይጠንቀቁ?

ደረጃ 6 - ተጨማሪ ማሻሻያዎች

  • ተጨማሪ ዳሳሽ ተኳሃኝነት
  • የ Servo ሞተር ኮድ መጨረስ ነበረበት
  • ከእሱ ጋር በብሉቱዝ የተጎላበተ ሮቦትን መቆጣጠር እንድንችል በብሉቱዝ ሞጁሎች ሊገናኝ የሚችል ሌላ መተግበሪያ።
  • የኮምፕዩተር ስሌት ስህተቶች እርማቶች

የሚመከር: