
Სარჩევი:
2025 ავტორი: John Day | day@howwhatproduce.com. ბოლოს შეცვლილი: 2025-01-23 14:50

Home System 3000 არის მოწყობილობა, რომელიც იყენებს არდუინოს, ტემპერატურის სენსორს, პიეზო ზუმერს, ოპტიკურ დეტექტორს/ფოტოტრანსისტორს და სერვოს, რომელიც აჩვენებს სახლის ენერგოეფექტურობის გაუმჯობესების გზებს.
ნაბიჯი 1: ტემპერატურის სენსორი

· გაუშვით თქვენი დენის და მიწის მავთულები
მიკროკონტროლი პურის დაფის მხარეს
· მოათავსეთ ტემპერატურის სენსორი პურის დაფაზე და შესაბამისად გაუშვით შესაბამისი დენის და დასაკავშირებელი მავთულები
· გაითვალისწინეთ, რომ ტემპერატურის სენსორს აქვს სამი წვერი, ხოლო შუა წვერს აქვს მავთული, რომელიც გადის პორტიდან "A0".
· ტემპერატურის სენსორის კოდი:
answer = questdlg ('გთხოვთ გაუშვით arduino და servo დაწყების კოდი', 'პასუხი', 'Ok', 'Ok')
მოთხოვნა = 'დასაწყებად დააჭირეთ ნებისმიერ ღილაკს'
პაუზა
prompt1 = 'მინიმალური ტემპერატურის დაყენება'
x = შეყვანა (მოთხოვნა 1)
prompt2 = 'მაქსიმალური ტემპერატურის დაყენება'
y = შეყვანა (მოთხოვნა 2)
prompt3 = 'დასაწყებად დააჭირეთ ნებისმიერ ღილაკს'
პაუზა
ფიგურა
h = ანიმაციური ხაზი;
ax = gca;
ax. YGrid = 'ჩართული';
ax. YLim = [65 85];
გაჩერება = ყალბი;
startTime = datetime ('ახლა');
სანამ გავჩერდები
% მიმდინარე ძაბვის მნიშვნელობის წაკითხვა
v = readVoltage (a, 'A0');
% გამოთვალეთ ტემპერატურა ძაბვისგან (მონაცემთა ფურცლის საფუძველზე)
TempC = (v - 0.5)*100;
TempF = 9/5*TempC + 32;
მიიღეთ მიმდინარე დრო
t = datetime ('now') - startTime;
დაამატეთ ქულები ანიმაციას
დამატებები (h, datenum (t), TempF)
% განახლების ღერძი
ax. XLim = datenum ([t- წამი (15) t]);
datetick ('x', 'keeplimits')
დნოუ
შეამოწმეთ გაჩერების მდგომარეობა
stop = readDigitalPin (a, 'D12');
ნაბიჯი 2: ბუზერი

· მავთული ზუზუნში, რომელიც გამოყენებული იქნება უკიდურესად მაღალი ან უკიდურესად დაბალი ტემპერატურის კითხვის სიგნალისთვის
· პოზიტიური სვეტიდან ზუზუნის პოზიტიურ მხარეს მავთული არ გადის
· სამაგიეროდ, მავთული გადის ზუზუნის პოზიტიური მხრიდან პორტამდე, სახელწოდებით "11"
ეს მოგვიანებით იქნება გამოყენებული ზარის ზარის ადგილმდებარეობის დასაკავშირებლად წერილობით კოდში.
· ზუზერის კოდი:
თუ TempF> = y
დისპი ("დახურე კარი ცხელია")
playTone (a, 'D11', 500, 1)
elseif TempF <= x
disp ("დახურე კარი ცივა")
playTone (a, 'D11', 250, 1)
დასასრული
დასასრული
ნაბიჯი 3: ოპტიკური დეტექტორი/ფოტოტრანსისტორი

· ეს სენსორი მოითხოვს წინააღმდეგობებს სხვებისგან განსხვავებით
· დარწმუნდით, რომ სენსორის ოთხივე წვერი ჩართულია მარყუჟში მავთულის შეყვანის შემდეგ
· სენსორი ამოიცნობს სინათლის ცვლილებას, წარმოადგენს მოძრაობას და აფიქსირებს მას შეყვანის სახით
· კოდი ოპტიკური დეტექტორის/ფოტოტრანსისტორისთვის:
ნათელი ა
a = arduino ('/dev/tty.usbserial-DN01DVI2', 'Uno', 'Libraries', 'Servo');
მოთხოვნა = 'განათების დონის ბარიერის დაყენება'
z = შეყვანა (მოთხოვნა)
lightLevel = 0
ხოლო lightLevel ~ = -1
lightLevel = readVoltage (a, 'A1')
თუ lightLevel> = z
answer = questdlg ("გსურთ შეცვალოთ AC?", "დიახ", "არა")
შეცვალეთ პასუხი
საქმე "დიახ"
answer2 = questdlg ("ჩართეთ AC ზემოთ ან ქვემოთ?", "პასუხი", "ქვემოთ", "ზემოთ", "ზემოთ")
შეცვალეთ პასუხი 2
საქმე "ქვემოთ"
s = servo (a, 'D10');
კუთხისთვის = 0:.1:.5
writePosition (s, კუთხე);
current_position = readPosition (s);
current_position = მიმდინარე_პოზიცია * 180;
სერვო ძრავის ამობეჭდვის ამჟამინდელი პოზიცია
fprintf ('ამჟამინდელი პოზიცია არის %d / n', მიმდინარე_პოზიცია);
მცირე შეფერხებაა საჭირო ისე, რომ სერვო განთავსდეს
% კუთხე უთხრა მას.
პაუზა (2);
დასასრული
% დააბრუნეთ ძრავა 0 კუთხის პოზიციაზე
writePosition (s, 0);
ნათელი ს
მოთხოვნა = 'გასაგრძელებლად დააჭირეთ ნებისმიერ ღილაკს'
questdlg ('AC უარი თქვა', 'პასუხი', 'Ok', 'Ok')
საქმე "ზემოთ"
s = servo (a, 'D10');
კუთხისთვის =.5:.1: 1
writePosition (s, კუთხე);
current_position = readPosition (s);
current_position = მიმდინარე_პოზიცია * 180;
სერვო ძრავის ამობეჭდვის ამჟამინდელი პოზიცია
fprintf ('ამჟამინდელი პოზიცია არის %d / n', მიმდინარე_პოზიცია);
მცირე შეფერხებაა საჭირო ისე, რომ სერვო განთავსდეს
% კუთხე უთხრა მას.
პაუზა (2);
დასასრული
ნაბიჯი 4: სერვო

· სერვო წარმოადგენს
კონდიციონერი და არის მოძრაობის გამოვლენის შესასვლელი
· ის მოითხოვს პოზიტიურ მავთულს, მიწას და მავთულს პორტიდან "D9" სერვოსკენ
· სერვოს კოდი:
% დააბრუნეთ ძრავა 0 კუთხის პოზიციაზე
writePosition (s, 0);
ნათელი ს
მოთხოვნა = 'გასაგრძელებლად დააჭირეთ ნებისმიერ ღილაკს'
questdlg ("AC აღმოჩნდა", "პასუხი", "Ok", "Ok")
დასასრული
დასასრული
პაუზა
შესვენება
დასასრული
დასასრული
*სპეციალური შენიშვნა: სერვოს ზოგიერთი კოდი ინტეგრირებულია ოპტიკური დეტექტორის/ფოტოტრანსისტორის კოდთან.
გირჩევთ:
ბატონი არყის ბამპერი ინსტრუქციული: 9 ნაბიჯი

მისტერ არყის ბამპერი ინსტრუქციული: ამ ბამპერის მიზანია BoeBot- ს მისცეს საშუალება მანევრირებდეს მის შემოგარენში. როდესაც რაღაც ბამპერის ორივე მხარეს ეჯახება, თაბაშირის ფურცელი გახვეული Popsicle იჭერს და აკეთებს კავშირს, რომელიც ეუბნება რობოტს შეჩერდეს, გადატრიალდეს და გადატრიალდეს
რობოტი ბამპერები ინსტრუქციული: 5 ნაბიჯი

Robot Bumpers Instructable: მე გადავწყვიტე შემექმნა ინსტრუქტორი, რომელიც აჩვენებს როგორ შევქმნათ რობოტი ბამპერები და როგორ მოვათავსოთ ისინი ბატარეაზე კონტროლირებად რობოტზე. უპირველეს ყოვლისა, თქვენ გინდათ დარწმუნდეთ, რომ სადენები დაკავშირებულია სწორ ადგილას. წრე არ იქნება
ინსტრუქციული სურათების ზომა: 13 ნაბიჯი

ინსტრუქტიული სურათების ზომა: გაქვთ პრობლემა სურათების სწორად ზომის მიღებაში? თქვენი სურათების ზომა ძალიან დიდია და გადავსებულია ჩარჩოების მსგავსად? ეს სასწავლო მცდელობაა შეაჯამოს ის, რაც მე ვისწავლე ამ პრობლემის გადასაჭრელად. მე მითხრა Instructable St
ინსტრუქციული სადღესასწაულო ბარათი: 6 ნაბიჯი (სურათებით)

Instructables Holiday Card: მთლად RoboCard არ არის, მაგრამ ეს არის არაოფიციალური ოფიციალური ხელნაკეთი სადღესასწაულო ბარათი, რომელსაც Instructables HQ ალბათ არ გაუგზავნის თავის კლიენტებს. ეს არის წელიწადის ის დრო, როდესაც ჩვენ მოუთმენლად ველოდებით დიდ ბიჭს გადმოგცეთ ის, რაზეც ოცნებობდით
ინსტრუქციული რობოტი: 9 ნაბიჯი (სურათებით)

Instructables Robot: ამ ინსტრუქციურად მე გაჩვენებთ თუ როგორ უნდა გააკეთოთ დედის დღის რობოტი. არის ქსოვილის ნაჭრების სურათი, რომელიც დაგჭირდებათ. თქვენ ასევე დაგჭირდებათ შემდეგი: ყვითელი თექის წითელი ძაფის ძაფი (ყვითელი, წითელი და შავი) მაკრატლის საკერავი მანქანა