ዝርዝር ሁኔታ:
ቪዲዮ: የማርስ Roomba ፕሮጀክት UTK: 4 ደረጃዎች
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:32
የኃላፊነት ማስተባበያ - ሮምባው በ ሀ ውስጥ ከተዋቀረ ይህ ብቻ ይሠራል
በጣም ልዩ መንገድ ፣ ይህ መመሪያ የተፈጠረው እና በቴኔሴ ተማሪዎች እና ፋሲሊቲ ዩኒቨርስቲ እንዲጠቀምበት ታስቦ ነበር።
ይህ ኮድ በ MATLAB ውስጥ በአካባቢው የተፃፈ እና የተቀመጠ ኮድ ለማሄድ Roomba ን ለማዋቀር ያገለግላል። አስፈላጊውን ቤተመፃህፍት ከቴነሲ ዩኒቨርሲቲ ድር ጣቢያ ማግኘት ካልቻሉ ይህ አይሰራም። ቤተመጽሐፍት ካለዎት በቤተመጽሐፍት ውስጥ ያሉትን ተግባራት በመጠቀም የራስዎን Roomba ን በፕሮግራም ለመጠቀም ሊጠቀሙባቸው ይችላሉ። ይህ አስተማሪ ቤተ -ፍርግሞችን እንዴት እንደሚጭኑ ፣ ለሁሉም ኮዱ አቃፊ እንደሚፈጥሩ ፣ እና ከዚህ በታች ያቀረብነውን ፕሮግራም እንዴት ኮድ ማድረግ እና መጠቀም እንደሚችሉ ያስተምርዎታል።
አስፈላጊ ቁሳቁሶች;
· Roomba
· MATLAB
· Raspberry Pi እና Pi ካሜራ
ደረጃ 1 ፦ ቤተመጻሕፍትን ማግኘት
በኢንጂነሪንግ ድር ጣቢያ ላይ የመሣሪያ ሳጥን/ቤተ -መጽሐፍት ቀርቧል ፣ ያውርዱት እና ወደ አዲስ አቃፊ ውስጥ ያስገቡት። ይህ አቃፊ ሁሉንም የፕሮጀክት ሥራ ፋይሎችን መያዝ አለበት ፣ ምክንያቱም እርስዎ በሚያደርጉት ፕሮግራም ውስጥ ጥቅም ላይ የዋለው ማንኛውም ተግባር ወደ ቤተ -መጽሐፍት ማመልከት አለበት። ይህንን ካደረጉ በኋላ በፕሮግራሞችዎ ላይ መስራት መጀመር ይችላሉ
ደረጃ 2 - ፕሮግራሞቹን መጻፍ
በፕሮግራሙ ውስጥ ጥቅም ላይ ሊውሉ የሚችሉ ጥቂት ተግባራት አሉ ፣ እነዚህ ተግባራት “ሰነድ ክፍልባ” የሚለውን ትእዛዝ በመጠቀም ሊደረስባቸው ይችላሉ። እነዚህን ተግባራት በመጠቀም የእርስዎን Roomba በብዙ የተለያዩ መንገዶች መቆጣጠር ይችላሉ። ከዚህ በታች የተሰጠው ኮድ የማር ሮቨርን ለመፍጠር የጎበዝ ዳሳሾችን ፣ የመብራት አሞሌ ዳሳሾችን ፣ ካሜራ እና የገደል ዳሳሾችን በተለያዩ መንገዶች ይጠቀማል። ሮምባ አንድን ነገር ሲመታ ለመለየት የቦምብ ዳሳሾችን ተጠቀምን ፣ ይህ በሚሆንበት ጊዜ ሮቦቱ ወደ ኋላ ይመለሳል ፣ ዞር ብሎ መንቀሳቀሱን ይቀጥላል። ሮምባ አንድን ነገር ከመምታቱ በፊት ፣ የብርሃን አሞሌ ነገሩን ይገነዘባል እና ሮምባውን ያዘገየዋል ፣ ይህም ወደ ዕቃው ውስጥ ሲወድቅ የጎማ ዳሳሹን ለማነቃቃት ሮምባ በተጽዕኖው ያነሰ/የሚጎዳ ይሆናል። ካሜራው ውሃ ወይም ላቫ በላዩ ላይ ይፈልጋል ፣ ፈሳሽ ካልተገኘ ሮቦቱ ፍለጋውን ይቀጥላል ፣ የተወሰነ ውሃ ከተገኘ ሮቦቱ ለኦፕሬተሮቹ መልእክት ይልካል። የገደል ዳሳሾች ሮቦቱ ወደ ገደል ከተቃረበ ለማቆም የተነደፉ ናቸው። ሮቦቱ ገደል ከተሰማው ወደቀ እና ወደ ኋላ እንዳይመለስ ወደ ኋላ ይመለሳል።
ደረጃ 3 ኮድ
እንደ ቤተ -መጽሐፍቶቹ በተመሳሳይ አቃፊ ውስጥ በሚገኘው ወደ MATLAB ፋይል ይቅዱ እና ይለጥፉ
ተግባር ዋና ሮምባ ፋይል (r)
r.setDriveVelocity (0.1, 0.1)
እውነት ሆኖ % Infinte ኮዱን ለማስቀጠል loop እያለ
dontFall = cliffCheck (r) % ተለዋዋጭ 'dontFall' ን ወደ ተግባር 'cliffCheck' ይመድባል
'cliffCheck' ከተጠናቀቀ በኋላ በኮዱ ውስጥ ለመቀጠል መግለጫው የማይወድቅ ከሆነ
r.setDriveVelocity (0.1, 0.1) % 'cliffCheck' ከተጠናቀቀ በኋላ Roomba ን እንዲንቀሳቀስ ያደርገዋል
መግለጫ % ከሆነ 'dontFall' ያበቃል
ባምፐር = መጨናነቅ (r) % ተለዋዋጭ ‹ባምፐር› ን ወደ ‹bumpcheck› ተግባር ይመድባል
'bumpcheck' ከተጠናቀቀ በኋላ በኮድ ለመቀጠል መግለጫ % ከሆነ
r.setDriveVelocity (0.1, 0.1) % 'bumpcheck' ከተጠናቀቀ በኋላ Roomba ን እንዲንቀሳቀስ ያደርገዋል
መጨረሻ % መግለጫ ከሆነ ‹ባምፐር› ያበቃል
ፈሳሾች = LiquidCheck (r) % ተለዋዋጭ 'ፈሳሾችን' ለ 'LiquidCheck' ተግባር ይመድባል
ፈሳሽ ከሆነ % 'LiquidCheck' ከተጠናቀቀ በኋላ በኮድ ለመቀጠል መግለጫ ከሆነ
r.setDriveVelocity (0.1, 0.1) % 'LiquidCheck' ከተጠናቀቀ በኋላ Roomba ን እንዲንቀሳቀስ ያደርገዋል
መጨረሻ % መግለጫ ከሆነ ‹ፈሳሾችን› ያበቃል
lightbumper = lightcheck (r) % ተለዋዋጭ 'lightbumper' ን ወደ 'lightcheck' ተግባር ይመድባል
ለአፍታ አቁም (0.1) % ቀጣይ የሉፕ ድግግሞሽ እንዳይኖር በአጭሩ ለአፍታ አቁም
መጨረሻ % ማለቂያ በሌለበት ያበቃል
መጨረሻ % ያበቃል ተግባር
የተግባር ባምፔር = ባምፕ ቼክ (r) % 'bumpcheck' ተግባርን ይፈጥራል
bumpdata = r.getBumpers % ሁሉንም መረጃ ከባምፐር ወደ ተለዋዋጭ 'bumpdata' ይመድባል
ባምፐር = bumpdata.right || bumpdata.left || bumpdata.front % ለተለያዩ ባምፐሮች የተከማቸ ተለዋዋጭ ፣ ‹ባምፐር› ይፈጥራል
ከሆነ bumpdata.right> 0 % መግለጫው የቤምባው የተለያዩ ተግባራት እንዲፈጠሩ የሚያደርግ ከሆነ ቦምፐር ቢመታ
r.stop % Roomba ያቆማል
r.moveDistance (-0.3 ፣ 0.2) % Roomba 0.3m ን ይቀይራል
r.turnAngle (90 ፣ 0.5) % Roomba 90 ዲግሪን በተቻለ ፍጥነት ያሽከረክራል
አበቃ
bumpdata.front> 0 ከሆነ
r.stop
r.moveDistance (-0.3 ፣ 0.2)
r.turnAngle (ራንዲ (270) ፣ 0.5) % በተቻለ ፍጥነት በ 0 እና በ 270 ዲግሪዎች መካከል ሮምባን በዘፈቀደ ክፍተት ያሽከረክራል
አበቃ
bumpdata.left> 0 ከሆነ
r.stop
r.moveDistance (-0.3 ፣ 0.2)
r.turnAngle (-90 ፣ 0.5) % በተቻለ ፍጥነት Roomba -90 ዲግሪዎች ያሽከረክራል
አበቃ
አበቃ
ተግባር lightbumper = lightcheck (r) % 'lightcheck' ተግባር ይፈጥራል
lightdata = r.getLightBumpers % ሁሉንም መረጃ ከብርሃን መንኮራኩር ዳሳሽ ወደ ተለዋዋጭ 'lightdata' ይመድባል
lightbumper = lightdata.left || lightdata.right || lightdata.rightCenter || lightdata.leftCenter % ለተለያዩ የብርሃን ባምፖች የተከማቸ ተለዋዋጭ ፣ 'lightbumper' ይፈጥራል።
if lightbumper % ከሆነ የመብራት ጠመንጃውን መረጃ ከላይ ለመጥራት
ከሆነ lightdata.left> 10 % የብርሃን መግለጫው ከ 10 እሴቶች በላይ ከተሰማው የክፍሉባ የተለያዩ ተግባራት እንዲፈጠሩ ምክንያት ከሆነ
r.setDriveVelocity (0.05 ፣ 0.05) % ለጉልበቱ ለመዘጋጀት የክፍልባን ፍጥነት ይቀንሳል
መጨረሻ % መግለጫ ከሆነ የመጀመሪያውን ያበቃል
lightdata.rightCenter> 10 ከሆነ
r.setDriveVelocity (0.05 ፣ 0.05)
አበቃ
ከሆነ lightdata.right> 10
r.setDriveVelocity (0.05 ፣ 0.05)
አበቃ
ifdata.leftCenter> 10 ከሆነ
r.setDriveVelocity (0.05 ፣ 0.05)
አበቃ
መግለጫ % ከሆነ 'lightbumper' ያበቃል
መጨረሻ %የመብራት ቼክ ተግባርን ያበቃል
ተግባር dontFall = cliffCheck (r) % 'cliffCheck' ተግባርን ይፈጥራል
ውሂብ = r.getCliffSensors; % ሁሉንም ከገደል ዳሳሽ ወደ ተለዋዋጭ ‹ውሂብ› ይመድባል
dontFall = data.left <1020 || data.leftFront <1020 || data.rightFront <1020 || data.right <1020 % ለተለያዩ የገደል ዳሳሾች የተከማቸ ተለዋዋጭ ፣ ‹dontFall› ይፈጥራል
ከሆነ አይወድቁ % የገደል አነፍናፊ ውሂብን ከላይ ለመጥራት መግለጫ ከሆነ
ከሆነ data.left <1010 % የገደል አነፍናፊው ከ 1010 እሴቶች በታች ከተሰማው የክፍሉባ የተለያዩ ተግባራት እንዲከሰቱ መግለጫ ከሆነ።
r.stop
r.moveDistance (-0.2 ፣ 0.2) % Roomba 0.2m ይቀለበስ
r.turnAngle (-90 ፣ 0.5) % በተቻለ ፍጥነት Roomba -90 ዲግሪዎች ያሽከረክራል
elseif data.leftFront <1010
r.stop
r.moveDistance (-0.3 ፣ 0.2)
r.turnAngle (90 ፣ 0.5) % Roomba 90 ዲግሪን በተቻለ ፍጥነት ያሽከረክራል
elseif data.rightFront <1010
r.stop
r.moveDistance (-0.3 ፣ 0.2)
r.turnAngle (90 ፣ 0.5) % Roomba 90 ዲግሪን በተቻለ ፍጥነት ያሽከረክራል
ሌላ ከሆነ ውሂብ። መብት <1010
r.stop
r.moveDistance (-0.3 ፣ 0.2)
r.turnAngle (90 ፣ 0.5) % Roomba 90 ዲግሪን በተቻለ ፍጥነት ያሽከረክራል
አበቃ
አበቃ
አበቃ
የተግባር ፈሳሾች = LiquidCheck (r) % 'LiquidCheck' ተግባርን ይፈጥራል
እውነት %ለመለካት ማለቂያ የሌለው ዑደት ይጀምራል
img = r.getImage; % ካሜራውን ከሮቦቱ ያነባል
ምስል (img) % በምስል መስኮት ውስጥ ምስሉን ያሳያል
red_mean = አማካይ (አማካኝ (img (200 ፣ 150 ፣ 1)))% የቀይ ፒክሰሎችን አማካይ መጠን ያነባል
blue_mean = አማካኝ (አማካኝ (img (200 ፣ 150 ፣ 3)))% የሰማያዊ ፒክስል መጠንን ያነባል
ፈሳሾች = ቀይ_ማለት || blue_mean % ለተለያዩ የቀለም ተለዋጮች የተከማቸ ተለዋዋጭ ፣ ‹ፈሳሾች› ይፈጥራል
ፈሳሽ ከሆነ % የምስል ውሂቡን ከላይ ለመጥራት መግለጫ ከሆነ
red_mean> 170 % ከሆነ መግለጫው ከ 170 የሚበልጠውን ቀይ ቀይ ቀለም ካየ የክፍሉባ የተለያዩ ተግባራት እንዲከሰቱ የሚያደርግ ከሆነ
r.stop % roomba ያቆማል
r.setLEDCenterColor (255) % ክብ ወደ ቀይ ቀለም ያዘጋጃል
r.setLEDDigits (); ማሳያውን % አጽዳ
ረ = የተጠባባቂ አሞሌ (0 ፣ '*መልእክት)*); % ለመጫን መልእክት የመጠባበቂያ አሞሌን ይፈጥራል
r.setLEDDigits ('HOT'); % «HOT» ን ለማውጣት የ LED ማሳያ ያዘጋጃል
ለአፍታ አቁም (0.5) %አጭር አቁም የተከፋፈለ መረጃን ለማንበብ
r.setLEDDigits ('LAVA'); % «LAVA» ን ለማውጣት የ LED ማሳያ ያዘጋጃል
ለአፍታ አቁም (0.5)
የተጠባባቂ አሞሌ (.33 ፣ ረ ፣ '*መልእክት አለ*'); %በተጠባባቂ አሞሌ ውስጥ ጭማሪ ይፈጥራል
r.setLEDDigits ('HOT');
ለአፍታ አቁም (0.5)
r.setLEDDigits ('LAVA');
ለአፍታ አቁም (0.5)
የተጠባባቂ አሞሌ (.67 ፣ ረ ፣ '*መልእክት አለ*'); % በተጠባባቂ አሞሌ ውስጥ ጭማሪ ይፈጥራል
r.setLEDDigits ('HOT');
ለአፍታ አቁም (0.5)
r.setLEDDigits ('LAVA');
የተጠባባቂ አሞሌ (1 ፣ ረ ፣ '*መልእክት)*); %የመጠባበቂያ አሞሌውን ያጠናቅቃል
ለአፍታ አቁም (1)
ዝጋ (ረ) %የመጠባበቂያ አሞሌውን ይዘጋል
r.setLEDDigits (); % የ LED ማሳያውን ያጸዳል
ሁሉንም ይዝጉ %ሁሉንም ቀዳሚ መስኮቶች ይዘጋል
መጥረቢያዎች ('ቀለም' ፣ 'ምንም' ፣ 'XColor' ፣ 'የለም' ፣ 'YColor' ፣ 'የለም') % የመጥረቢያዎችን እና ገበታውን የመስኮት መስኮት ያጸዳል
y = 0.5; % በማሴሪያው መስኮት ውስጥ የጽሑፉን y- አቀማመጥ ያዘጋጃል
x = 0.06; % በእቅዱ መስኮት ውስጥ የጽሑፉን x- አቀማመጥ ያዘጋጃል
ርዕስ ('ከማርስ ሮምባ' ፣ 'ቅርጸ ቁምፊ' ፣ 32) % ወደ ሴራ መስኮቱ ርዕስ ያክላል
quadeqtxt = 'አደጋ ላቫ'; % ተለዋዋጭ 'quadeqtxt' ን ወደ ውፅዓት 0 ያዘጋጃል
ጽሑፍ (x ፣ y ፣ quadeqtxt ፣ ‹ተርጓሚ› ፣ ‹ላቴክስ› ፣ ‹ቅርጸ -ቁምፊ› ፣ 36); % በእቅዱ መስኮት ውስጥ የኳዴክ ጽሑፍን ያሳያል
r.moveDistance (-0.2 ፣ 0.2) %የክፍሉን 0.2 ሜ ይቀይረዋል
r.turnAngle (180 ፣ 0.5) %ክፍሉን 180 ዲግሪ በተቻለ ፍጥነት ይቀይረዋል
r.setLEDCenterColor (128, 128); % የክፍሉን ማእከል ኤልኢዲ ወደ ብርቱካን ያዘጋጃል
ሁሉንም ይዝጉ የተቀሩ ክፍት መስኮቶችን ይዘጋል
elseif blue_mean> 175 % ካሜራው ከ 175 የሚበልጥ መካከለኛ ሰማያዊ ቀለም ካየ የክፍሉባ የተለያዩ ተግባራት እንዲከሰቱ ለማድረግ መግለጫ ከሆነ
r.stop % roomba ያቆማል
r.setLEDCenterColor (255) % ክብ ወደ ቀይ ቀለም ያዘጋጃል
r.setLEDDigits (); ማሳያውን % አጽዳ
ረ = የተጠባባቂ አሞሌ (0 ፣ '*መልእክት)*); % ለመጫን መልእክት የመጠባበቂያ አሞሌን ይፈጥራል
r.setLEDDigits ('ተመልከት'); % «LOOK» ን ለማውጣት የ LED ማሳያ ያዘጋጃል
ለአፍታ አቁም (0.5) %አጭር አቁም የተከፋፈለ መረጃን ለማንበብ
r.setLEDDigits ('WATR'); % 'WATR' ን ለማውጣት የ LED ማሳያ ያዘጋጃል
ለአፍታ አቁም (0.5)
የተጠባባቂ አሞሌ (.33 ፣ ረ ፣ '*መልእክት አለ*'); %በተጠባባቂ አሞሌ ውስጥ ጭማሪ ይፈጥራል
r.setLEDDigits ('ተመልከት');
ለአፍታ አቁም (0.5)
r.setLEDDigits ('WATR');
ለአፍታ አቁም (0.5)
የተጠባባቂ አሞሌ (.67 ፣ ረ ፣ '*መልእክት አለ*'); % በተጠባባቂ አሞሌ ውስጥ ጭማሪ ይፈጥራል
r.setLEDDigits ('ተመልከት');
ለአፍታ አቁም (0.5)
r.setLEDDigits ('WATR');
የተጠባባቂ አሞሌ (1 ፣ ረ ፣ '*መልእክት)*); %የመጠባበቂያ አሞሌውን ያጠናቅቃል
ለአፍታ አቁም (1)
ዝጋ (ረ) %የመጠባበቂያ አሞሌውን ይዘጋል
r.setLEDDigits (); % የ LED ማሳያውን ያጸዳል
ሁሉንም ይዝጉ %ሁሉንም ቀዳሚ መስኮቶች ይዘጋል
መጥረቢያዎች ('ቀለም' ፣ 'የለም' ፣ 'XColor' ፣ 'የለም' ፣ 'YColor' ፣ 'none') % የመጥረቢያዎችን እና ገበታውን የመስኮት መስኮት ያጸዳል
y = 0.5; % በማሴሪያው መስኮት ውስጥ የጽሑፉን y- አቀማመጥ ያዘጋጃል
x = 0.06; % በእቅዱ መስኮት ውስጥ የጽሑፉን x- አቀማመጥ ያዘጋጃል
ርዕስ ('ከማርስ ሮምባ' ፣ 'ቅርጸ ቁምፊ' ፣ 32) % ወደ ሴራ መስኮቱ ርዕስ ያክላል
quadeqtxt = 'የተገኘ ውሃ'; % ተለዋዋጭ 'quadeqtxt' ን ወደ ውፅዓት 0 ያዘጋጃል
ጽሑፍ (x ፣ y ፣ quadeqtxt ፣ ‹ተርጓሚ› ፣ ‹ላቴክስ› ፣ ‹ቅርጸ -ቁምፊ› ፣ 36); % በእቅዱ መስኮት ውስጥ የኳዴክ ጽሑፍን ያሳያል
r.moveDistance (-0.2 ፣ 0.2) %የክፍሉን 0.2 ሜ ይቀይረዋል
r.turnAngle (180 ፣ 0.5) %ክፍሉን 180 ዲግሪ በተቻለ ፍጥነት ይቀይረዋል
r.setLEDCenterColor (128, 128); % የክፍሉን ማእከል ኤልኢዲ ወደ ብርቱካን ያዘጋጃል
ሁሉንም ይዝጉ የተቀሩ ክፍት መስኮቶችን ይዘጋል
መግለጫ %ከሆነ 'red_mean' ያበቃል
መጨረሻ %መግለጫ ከሆነ ‹ፈሳሾችን› ያበቃል
መጨረሻ % ማለቂያ በሌለው ይዘጋል
መጨረሻ % ተግባሩን ያበቃል 'LiquidCheck'
ደረጃ 4 - ኮዱን ማስኬድ
ኮዱን ወደ MATLAB ገልብጠው ከለጠፉ በኋላ ከ Roomba ጋር መገናኘት አለብዎት። Roomba ከተገናኘ በኋላ ተለዋዋጭ r ን መሰየም አለብዎት። ተግባሮቹ Roomba ን ሲጠቅሱ ተለዋዋጭውን r ይጠቀማሉ ፣ ስለዚህ Roomba እንደ ተለዋዋጭ r መገለጽ አለበት። ኮዱን ከሮጠ በኋላ Roomba እንደ መመሪያው መሮጥ አለበት።
የሚመከር:
የሮቦት ፕሮጀክት UTK 2017: 3 ደረጃዎች
የሮቦት ፕሮጀክት UTK 2017-ተልእኮ-የእኛ መሐንዲሶች ቡድን ፈጠራ የሰው ድጋፍ ሰጪ ማርስ ሮቨር.- Out ቡድኖችን ለማልማት ለትርፍ ያልተቋቋመ ፋውንዴሽን Froogle ተቀጥሯል። ተከታታይ o ን ለመተግበር በኮድ የያዝነው የመኝታ ክፍል ነው
Raspberry Pi - ገዝ የማርስ ሮቨር ከ OpenCV የነገር መከታተያ ጋር 7 ደረጃዎች (ከስዕሎች ጋር)
Raspberry Pi - ገዝ የማርስ ሮቨር ከ OpenCV የነገር መከታተያ ጋር - በ Raspberry Pi 3 የተጎላበተ ፣ ክፍት የ CV ዕቃ መታወቂያ ፣ የአልትራሳውንድ ዳሳሾች እና የዲሲ ሞተሮች። ይህ ሮቨር የሰለጠነበትን ማንኛውንም ነገር መከታተል እና በማንኛውም መሬት ላይ መንቀሳቀስ ይችላል
የማርስ ህዳሴ ሮቦት 4 ደረጃዎች
የማርስ ህዳሴ ሮቦት-ይህ አስተማሪ የማርስ ህዳሴ ሮቦት መርሃ ግብርን ለማዘዝ እና ለማዘዝ የደረጃ በደረጃ መመሪያ ነው። ለመጀመር አንድ ሰው የሚከተሉትን ቁሳቁሶች ዝርዝር ማግኘት አለበት።
Roomba MATLAB ፕሮጀክት 5 ደረጃዎች
የ Roomba MATLAB ፕሮጀክት - NASA ለማርስ ሮቨር ያለው የአሁኑ ዕቅድ የመረጃ ሰብሳቢ እንዲሆን እና በማርስ ዙሪያ የሚንከራተቱ ፣ ሳይንቲስቶች ቀደም ያሉ የሕይወት ቅርጾች መኖራቸውን ለማየት ወደ ምድር ለመመለስ የአፈር ናሙናዎችን በመሰብሰብ ነው። ፕላኔቷ። ተጨማሪ
በዩኤስቢ ኃይል የተቃጠለ በርነር! ይህ ፕሮጀክት በፕላስቲክ / በእንጨት / በወረቀት ሊቃጠል ይችላል (አስደሳች ፕሮጀክት እንዲሁ በጣም ጥሩ እንጨት መሆን አለበት) 3 ደረጃዎች
በዩኤስቢ ኃይል የተቃጠለ በርነር! ይህ ፕሮጀክት በፕላስቲክ / በእንጨት / በወረቀት ሊቃጠል ይችላል (አስደሳች ፕሮጀክት እንዲሁ በጣም ጥሩ እንጨት መሆን አለበት) - ይህንን የዩኤስቢ ዩኤስቢ አያድርጉ !!!! ከሁሉም አስተያየቶች ኮምፒተርዎን ሊጎዳ እንደሚችል ተረዳሁ። ኮምፒተርዬ ደህና ነው። 600 ሜ 5 ቪ የስልክ ባትሪ መሙያ ይጠቀሙ። እኔ ይህንን ተጠቀምኩ እና በጥሩ ሁኔታ ይሠራል እና ኃይልን ለማቆም የደህንነት መሰኪያ ከተጠቀሙ ምንም ሊጎዳ አይችልም