
Daftar Isi:
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-23 14:49

Home System 3000 adalah perangkat yang menggunakan Arduino, sensor suhu, buzzer piezo, detektor optik/fototransistor, dan servo untuk menampilkan cara meningkatkan efisiensi energi rumah.
Langkah 1: Sensor Suhu

· Jalankan kabel daya dan arde Anda dari
pengontrol mikro ke sisi papan roti
· Tempatkan sensor suhu ke dalam papan roti, dan jalankan kabel daya dan arde yang sesuai
· Perhatikan bahwa sensor suhu memiliki tiga cabang, dan cabang tengah memiliki kabel yang mengalir dari port "A0".
· Kode untuk sensor suhu:
answer = questdlg('Please run arduino and servo start code', 'response', 'Ok', 'Ok')
prompt = 'Tekan sembarang tombol untuk memulai'
berhenti sebentar
prompt1 = 'Setel suhu minimum'
x = masukan(prompt1)
prompt2 = 'Setel suhu maksimum'
y = masukan(prompt2)
prompt3 = 'tekan sembarang tombol untuk memulai'
berhenti sebentar
angka
h = garis animasi;
kapak = gca;
ax. YGrid = 'aktif';
kapak. YLim = [65 85];
berhenti = salah;
startTime = datetime('sekarang');
sementara ~berhenti
% Baca nilai tegangan saat ini
v = readVoltage(a, 'A0');
% Hitung suhu dari tegangan (berdasarkan lembar data)
TempC = (v - 0,5)*100;
TempF = 9/5*TempC + 32;
% Dapatkan waktu saat ini
t = datetime('sekarang') - startTime;
% Tambahkan poin ke animasi
titik tambahan(h, datenum(t), TempF)
% Perbarui sumbu
ax. XLim = datenum([t-detik(15) t]);
datetick('x', 'keeplimits')
ditarik
% Periksa kondisi berhenti
berhenti = readDigitalPin(a, 'D12');
Langkah 2: Buzzer

· Kawat di bel yang akan digunakan untuk menandakan pembacaan suhu yang sangat tinggi atau sangat rendah
· Tidak ada kabel yang mengalir dari kolom positif ke sisi positif bel
· Sebagai gantinya kabel dijalankan dari sisi positif buzzer ke port berlabel "11"
Ini akan digunakan nanti untuk memanggil lokasi buzzer dalam kode tertulis.
· Kode untuk bel:
jika TempF >= y
disp('tutup pintunya panas')
playTone(a, 'D11', 500, 1)
elseif TempF <= x
disp('tutup pintu karena dingin')
playTone(a, 'D11', 250, 1)
akhir
akhir
Langkah 3: Detektor Optik / Fototransistor

· Sensor ini membutuhkan resistor tidak seperti yang lain
· Pastikan keempat cabang sensor disertakan dalam loop setelah mencolokkan kabel
· Sensor mendeteksi perubahan cahaya, mewakili gerakan, dan merekamnya sebagai input
· Kode untuk Detektor Optik/Fototransistor:
jelas
a = arduino('/dev/tty.usbserial-DN01DVI2', 'Uno', 'Libraries', 'Servo');
prompt = 'Setel ambang batas tingkat cahaya'
z = masukan(cepat)
tingkat cahaya = 0
sementara lightLevel ~= -1
lightLevel = readVoltage (a, 'A1')
jika lightLevel >= z
answer = questdlg('mau ganti AC?', 'Ya', 'Tidak')
ganti jawaban
kasus 'Ya'
answer2 = questdlg('Naik atau Turunkan AC?', 'respons', 'Turun', 'Naik', 'Naik')
ganti jawaban2
kasus 'Turun'
s = servo(a, 'D10');
untuk sudut = 0:.1:.5
writePosition(s, sudut);
posisi_saat ini = readPosition(s);
posisi_saat ini = posisi_saat ini * 180;
% cetak posisi motor servo saat ini
fprintf('Posisi saat ini adalah %d\n', posisi_saat ini);
% penundaan kecil diperlukan agar servo dapat diposisikan pada
% sudut diberitahu untuk itu.
jeda (2);
akhir
% mengembalikan motor ke posisi sudut 0
writePosition(s, 0);
jelas s
prompt = 'Tekan sembarang tombol untuk melanjutkan'
questdlg('AC ditolak', 'respons', 'Oke', 'Oke')
kasus 'Naik'
s = servo(a, 'D10');
untuk sudut =.5:.1:1
writePosition(s, sudut);
posisi_saat ini = readPosition(s);
posisi_saat ini = posisi_saat ini * 180;
% cetak posisi motor servo saat ini
fprintf('Posisi saat ini adalah %d\n', posisi_saat ini);
% penundaan kecil diperlukan agar servo dapat diposisikan pada
% sudut diberitahu untuk itu.
jeda (2);
akhir
Langkah 4: Servo

· Servo mewakili
AC, dan merupakan output dari input deteksi gerakan
· Membutuhkan kabel positif, kabel ground, dan kabel dari port "D9" ke servo
· Kode untuk servo:
% mengembalikan motor ke posisi sudut 0
writePosition(s, 0);
jelas s
prompt = 'Tekan sembarang tombol untuk melanjutkan'
questdlg('AC muncul', 'respons', 'Oke', 'Oke')
akhir
akhir
berhenti sebentar
merusak
akhir
akhir
*Catatan khusus: beberapa kode untuk servo terintegrasi dengan kode untuk detektor optik/fototransistor.
Direkomendasikan:
Cube Sat Dapat Diinstruksikan: 7 Langkah

Cube Sat Dapat Diinstruksikan: Oleh Caden Howard
TAD 130 Dapat Diinstruksikan: 20 Langkah

TAD 130 Dapat Diinstruksikan: Ikhtisar
Ruang Selada Dapat Diinstruksikan- Robotika Sekolah Menengah Maskapai Penerbangan: 8 Langkah

Space Lettuce Chamber Instructable- Airline High School Robotics: Ini adalah Instructable yang dibuat oleh tiga siswa sekolah menengah yang terdaftar di kelas robotika. Kami akan membuat ruangan untuk menanam selada di luar angkasa untuk Kontes Tumbuh Melampaui Bumi oleh NASA. Kami akan menunjukkan cara membuat wadah. Mari kita
Pemodelan 3D Robot yang Dapat Diinstruksikan: 6 Langkah

Pemodelan 3D Robot yang Dapat Diinstruksikan: Model dibuat untuk digunakan sebagai mainan atau hiasan saat dicetak 3d. ukurannya kira-kira 8x8x6 cm. Gambar-gambarnya cukup jelas dengan fitur solidworks yang terdaftar di menu sebelah kiri selangkah demi selangkah saat proses berlangsung. File STL untuk
Dapat diinstruksikan 8-Menit: Casing iPhone yang Hampir Tidak Dapat Dihancurkan: 7 Langkah

8-Menit-diinstruksikan: IPhone Hampir Tidak Dapat Dihancurkan Kasus: Sekolah telah dimulai lagi, Dan berlatih basket bukanlah olahraga terbaik untuk meninggalkan iphone Anda hanya di sana, tidak terlindungi, hampir telanjang, kebal terhadap pukulan keras jatuh dan berkeringat! Jadi, saya melakukan perjalanan singkat ke toko barang bekas dan membeli