Daftar Isi:
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-23 14:49
video-video itu membuat video dan video bergerak.
Kami ingin menunjukkan ruang yang bergoyang melalui kisi-kisi yang bergerak dan Cermin Infinity untuk menunjukkan rasa ruang secara lebih efektif.
Pekerjaan kami terdiri dari dua pelat akrilik, bagian depan, dan pelat belakang, yang menunjukkan kepada orang-orang cara mereka mengaduk secara langsung, dan pelat belakang memiliki 25 motor langkah yang benar-benar menghasilkan gerakan.
Karya tersebut terdiri dari panel depan yang akan menampilkan kerlap-kerlip ruang, tongkat kayu yang menjalankan gerakan tengah, pemandu untuk joran, dan backboard yang menciptakan gerakan melalui motor 25 langkah.
25 puncak grid yang terhubung ke motor 25 langkah menghasilkan pola yang berbeda sesuai dengan nilai pengkodean yang ditetapkan. Selain itu, perusahaan ingin memaksimalkan ruang dengan menggabungkan akrilik transparan dengan film setengah cermin depan, kaca spion belakang, dan cermin Infinity berlampu hitam. Berbagai pola animasi dibuat berdasarkan gelombang dan menjemukan yang dibuat berdasarkan gelombang air.
Perlengkapan
Perlengkapan
1. UV LED 12V 840cm
2. Karet putih 12mm 750cm
3. Arduino mega 2560x2
4. Pengemudi motor x25
5. Motor langkah x25
6. Kabel bipolar untuk motor stepper x25
7. Silinder kayu x25
8.pvc (9mm) x25
9. Musim semi x 25
10. akrilik 700mm * 700mm
11. Setengah film cermin 1524mm * 1M
12. Garis pancing
13. Daya 12V 12.5A, 12V 75A
14. katrol waktu (cetak 3d) x 25
Langkah 1: Rencanakan Kerangka Besar
Ketika kita mulai, kita perlu merencanakan dan menggambar kerangka besar. jadi, kami menyiapkan file pdf untuk bingkai keseluruhan akrilik dan file stl katrol waktu (apa yang kami letakkan di depan motor langkah untuk ulir angin yang dapat menarik batang kayu tengah).
dengan frame akrilik keseluruhan dan katrol waktu, kita perlu membuat file stl terlebih dahulu, dan pencetakan 3d.
Langkah 2: Membuat Perangkat Keras
kotak1
1. Letakkan akrilik hitam 2T (No. 1) di lantai dan pasang sisi hitam akrilik 5T (No. 2) di atasnya. Tambahkan kisi hitam akrilik 5T (No. 3) dan tempelkan menggunakan ikatan akrilik.
kotak2
2. Taburkan air di atas piring transparan akrilik dan tutup dengan film semi-cermin. Setengah cermin menggulung kartu agar tidak menggelegak. Pasang sisi (2) dan transparansi akrilik (1). Jangan kencangkan tonjolan akrilik gabungan dan cermin akrilik (No. 1) secara lateral. Perbaiki sementara dengan selotip (untuk memperbaiki tali pancing atau merenovasi interior).
Langkah 3: Membuat Grid
1. Sebuah kolom kayu berukuran 12mm. Bor lubang di ujungnya untuk memungkinkan tali pancing masuk.
2. Tempelkan pelat akrilik ke sisi lain kolom kayu berlubang menggunakan perekat.
3. Pasang karet gelang melalui bagian belakang pilar kayu dan pasang pegas di dalamnya.
4. Bentuk keseluruhan
Langkah 4:
1. Nomor Koneksi Pin Arduino Mega 2560
2.bagi listrik menjadi dua bagian
3. Sirkuit motor stepper dan driver motor
4. Dua mega2560 Arduino dihubungkan dengan melintasi TX dan RX untuk komunikasi serial.
Langkah 5: Kode
#termasuk
StepperMulti stepper(200, 2, 3, 4, 5); // penomoran motor stepper StepperMulti stepper2(200, 6, 7, 8, 9); StepperMulti stepper3(200, 10, 11, 12, 13); StepperMulti stepper4(200, A0, A1, A2, A3); StepperMulti stepper5(200, A4, A5, A6, A7); StepperMulti stepper6(200, 22, 23, 24, 25); StepperMulti stepper7(200, 26, 27, 28, 29); StepperMulti stepper8(200, 30, 31, 32, 33); StepperMulti stepper9(200, 34, 35, 36, 37); StepperMulti stepper10(200, 38, 39, 40, 41); StepperMulti stepper11(200, 42, 43, 44, 45); StepperMulti stepper12(200, 46, 47, 48, 49); StepperMulti stepper13(200, 50, 51, 52, 53); uint32_t on_timer = milis(); uint32_t set_timer1 = milis(); uint32_t set_timer2 = milis(); uint32_t set_timer3 = milis(); uint32_t set_timer4 = milis(); uint32_t set_timer5 = milis(); uint32_t set_timer6 = milis(); uint32_t set_timer7 = milis(); uint32_t set_timer8 = milis(); uint32_t set_timer9 = milis(); uint32_t set_timer10 = milis(); int jumlah = 0; int init_set_speed
batalkan pengaturan()
Serial1.begin(115200); //komunikasi serial Serial.begin(9600); stepper.setSpeed(init_set_speed); stepper2.setSpeed(init_set_speed); stepper3.setSpeed(init_set_speed); stepper4.setSpeed(init_set_speed); stepper5.setSpeed(init_set_speed); stepper6.setSpeed(init_set_speed); stepper7.setSpeed(init_set_speed); stepper8.setSpeed(init_set_speed); stepper9.setSpeed(init_set_speed); stepper10.setSpeed(init_set_speed); stepper11.setSpeed(init_set_speed); stepper12.setSpeed(init_set_speed); stepper13.setSpeed(init_set_speed); } int KECEPATAN = 200; // kecepatan motor void loop() { //////////////////////////////////// if (milis() - set_timer1 < 6000) { // Motor stepper 13 bergerak antara 1500 dan 6000 detik.< if (millis() - on_timer < 1500) { stepper13.setStep(SPEED); } else if (milis() - on_timer < 3000) { stepper13.setStep(-SPEED); //(-SPEED) berarti rotasi terbalik } else if (millis() - on_timer < 4500) { stepper13.setStep(SPEED); } else if (milis() - on_timer 1000) { Serial1.write(0x01); jumlah = 1; } } /////////////////////// if (millis() - set_timer2 1000) { if (millis() - on_timer < 2500) { stepper7.setStep (KECEPATAN); stepper8.setStep(KECEPATAN); stepper9.setStep(KECEPATAN); stepper12.setStep(KECEPATAN); } else if (milis() - on_timer < 4000) { stepper7.setStep(-SPEED); stepper8.setStep(-SPEED); stepper9.setStep(-SPEED); stepper12.setStep(-SPEED); } else if (milis() - on_timer < 5500) { stepper7.setStep(SPEED); stepper8.setStep(KECEPATAN); stepper9.setStep(KECEPATAN); stepper12.setStep(KECEPATAN); } else if (milis() - on_timer < 7000) { stepper7.setStep(-SPEED); stepper8.setStep(-SPEED); stepper9.setStep(-SPEED); stepper12.setStep(-SPEED); } else { stepper7.setStep(0); stepper8.setLangkah (0); stepper9.setLangkah (0); stepper12.setStep(0); } } else { stepper7.setStep(0); stepper8.setLangkah (0); stepper9.setLangkah (0); stepper12.setStep(0); } if (millis() - set_timer2 1000) { if (millis() - on_timer < 2500) { stepper2.setStep(SPEED); stepper5.setStep(-SPEED); stepper6.setStep(KECEPATAN); stepper7.setStep(KECEPATAN); } else if (milis() - on_timer < 4000) { stepper2.setStep(-SPEED); stepper5.setStep(KECEPATAN); stepper6.setStep(-SPEED); stepper7.setStep(-SPEED); } else if (milis() - on_timer < 5500) { stepper2.setStep(SPEED); stepper5.setStep(-SPEED); stepper6.setStep(KECEPATAN); stepper7.setStep(KECEPATAN); } else if (milis() - on_timer < 7000) { stepper2.setStep(-SPEED); stepper5.setStep(KECEPATAN); stepper6.setStep(-SPEED); stepper7.setStep(-SPEED); } else { stepper2.setStep(0); stepper5.setLangkah (0); stepper6.setLangkah (0); stepper7.setLangkah (0); } } else { stepper2.setStep(0); stepper5.setLangkah (0); stepper6.setLangkah (0); stepper7.setLangkah (0); } /////////////////////////////////////////////// jika (milis() - set_timer3 2000) { if (millis() - on_timer < 3500) { stepper.setStep(SPEED); stepper2.setStep(KECEPATAN); stepper3.setStep(KECEPATAN); stepper4.setStep(KECEPATAN); stepper5.setStep(KECEPATAN); stepper6.setStep(KECEPATAN); stepper10.setStep(KECEPATAN); stepper11.setStep(KECEPATAN); } else if (milis() - on_timer < 5000) { stepper.setStep(-SPEED); stepper2.setStep(-SPEED); stepper3.setStep(-SPEED); stepper4.setStep(-SPEED); stepper5.setStep(-SPEED); stepper6.setStep(-SPEED); stepper10.setStep(-SPEED); stepper11.setStep(-SPEED); } else if (milis() - on_timer < 6500) { stepper.setStep(SPEED); stepper2.setStep(KECEPATAN); stepper3.setStep(KECEPATAN); stepper4.setStep(KECEPATAN); stepper5.setStep(KECEPATAN); stepper6.setStep(KECEPATAN); stepper10.setStep(KECEPATAN); stepper11.setStep(KECEPATAN); } else if (milis() - on_timer < 8000) { stepper.setStep(-SPEED); stepper2.setStep(-SPEED); stepper3.setStep(-SPEED); stepper4.setStep(-SPEED); stepper5.setStep(-SPEED); stepper6.setStep(-SPEED); stepper10.setStep(-SPEED); stepper11.setStep(-SPEED); } else { stepper.setStep(0); stepper2.setLangkah (0); stepper3.setLangkah (0); stepper4.setLangkah (0); stepper5.setLangkah (0); stepper6.setLangkah (0); stepper10.setLangkah (0); stepper11.setLangkah (0); } } else { stepper.setStep(0); stepper2.setLangkah (0); stepper3.setLangkah (0); stepper4.setLangkah (0); stepper5.setLangkah (0); stepper6.setLangkah (0); stepper10.setLangkah (0); stepper11.setLangkah (0); } if (millis() - set_timer3 2000) { if (millis() - on_timer < 3500) { stepper3.setStep(SPEED); stepper4.setStep(KECEPATAN); stepper8.setStep(KECEPATAN); stepper9.setStep(KECEPATAN); stepper10.setStep(KECEPATAN); stepper11.setStep(KECEPATAN); stepper12.setStep(KECEPATAN); stepper13.setStep(KECEPATAN); } else if (milis() - on_timer < 5000) { stepper3.setStep(-SPEED); stepper4.setStep(-SPEED); stepper8.setStep(-SPEED); stepper9.setStep(-SPEED); stepper10.setStep(-SPEED); stepper11.setStep(-SPEED); stepper12.setStep(-SPEED); stepper13.setStep(-SPEED); } else if (milis() - on_timer < 6500) { stepper3.setStep(SPEED); stepper4.setStep(KECEPATAN); stepper8.setStep(KECEPATAN); stepper9.setStep(KECEPATAN); stepper10.setStep(KECEPATAN); stepper11.setStep(KECEPATAN); stepper12.setStep(KECEPATAN); stepper13.setStep(KECEPATAN); } else if (millis() - on_timer < 8000) { stepper3.setStep(-SPEED); stepper4.setStep(-SPEED); stepper8.setStep(-SPEED); stepper9.setStep(-SPEED); stepper10.setStep(-SPEED); stepper11.setStep(-SPEED); stepper12.setStep(-SPEED); stepper13.setStep(-SPEED); } else { stepper3.setStep(0); stepper4.setLangkah (0); stepper8.setLangkah (0); stepper9.setLangkah (0); stepper10.setLangkah (0); stepper11.setLangkah (0); stepper12.setStep(0); stepper13.setLangkah (0); } } else { stepper3.setStep(0); stepper4.setLangkah (0); stepper8.setLangkah (0); stepper9.setLangkah (0); stepper10.setLangkah (0); stepper11.setLangkah (0); stepper12.setStep(0); stepper13.setLangkah (0); }////////////////////////////////stepper.moveStep(); stepper2.moveStep(); stepper3.moveStep(); stepper4.moveStep(); stepper5.moveStep(); stepper6.moveStep(); stepper7.moveStep(); stepper8.moveStep(); stepper9.moveStep(); stepper10.moveStep(); stepper11.moveStep(); stepper12.moveStep(); stepper13.moveStep(); }
pengkodean pertama
dan..
#termasuk
StepperMulti stepper(200, 2, 3, 4, 5); StepperMulti stepper2(200, 6, 7, 8, 9); StepperMulti stepper3(200, 10, 11, 12, 13); StepperMulti stepper4(200, A0, A1, A2, A3); StepperMulti stepper5(200, A4, A5, A6, A7); StepperMulti stepper6(200, 22, 23, 24, 25); StepperMulti stepper7(200, 26, 27, 28, 29); StepperMulti stepper8(200, 30, 31, 32, 33); StepperMulti stepper9(200, 34, 35, 36, 37); StepperMulti stepper10(200, 38, 39, 40, 41); StepperMulti stepper11(200, 42, 43, 44, 45); StepperMulti stepper12(200, 46, 47, 48, 49); StepperMulti stepper13(200, 50, 51, 52, 53); uint32_t on_timer = milis(); uint32_t set_timer1 = milis(); uint32_t set_timer2 = milis(); uint32_t set_timer3 = milis(); uint32_t set_timer4 = milis(); uint32_t set_timer5 = milis(); uint32_t set_timer6 = milis(); uint32_t set_timer7 = milis(); uint32_t set_timer8 = milis(); uint32_t set_timer9 = milis(); uint32_t set_timer10 = milis(); int jumlah = 0; int init_set_speed = 10; void setup() Serial1.begin(115200); Serial.begin(9600); stepper.setSpeed(init_set_speed); stepper2.setSpeed(init_set_speed); stepper3.setSpeed(init_set_speed); stepper4.setSpeed(init_set_speed); stepper5.setSpeed(init_set_speed); stepper6.setSpeed(init_set_speed); stepper7.setSpeed(init_set_speed); stepper8.setSpeed(init_set_speed); stepper9.setSpeed(init_set_speed); stepper10.setSpeed(init_set_speed); stepper11.setSpeed(init_set_speed); stepper12.setSpeed(init_set_speed); stepper13.setSpeed(init_set_speed); } int KECEPATAN = 200; lingkaran kosong() {
/////////////////////////////////////
if (milis() - set_timer1 < 6000) { if (milis() - on_timer < 1500) { stepper13.setStep(SPEED); } else if (milis() - on_timer < 3000) { stepper13.setStep(-SPEED); } else if (milis() - on_timer < 4500) { stepper13.setStep(SPEED); } else if (milis() - on_timer 1000) { Serial1.write(0x01); jumlah = 1; } } /////////////////////// if (millis() - set_timer2 1000) { if (millis() - on_timer < 2500) { stepper7.setSte p(KECEPATAN); stepper8.setStep(KECEPATAN); stepper9.setStep(KECEPATAN); stepper12.setStep(KECEPATAN); } else if (milis() - on_timer < 4000) { stepper7.setStep(-SPEED); stepper8.setStep(-SPEED); stepper9.setStep(-SPEED); stepper12.setStep(-SPEED); } else if (milis() - on_timer < 5500) { stepper7.setStep(SPEED); stepper8.setStep(KECEPATAN); stepper9.setStep(KECEPATAN); stepper12.setStep(KECEPATAN); } else if (milis() - on_timer < 7000) { stepper7.setStep(-SPEED); stepper8.setStep(-SPEED); stepper9.setStep(-SPEED); stepper12.setStep(-SPEED); } else { stepper7.setStep(0); stepper8.setLangkah (0); stepper9.setLangkah (0); stepper12.setStep(0); } } else { stepper7.setStep(0); stepper8.setLangkah (0); stepper9.setLangkah (0); stepper12.setStep(0); } if (millis() - set_timer2 1000) { if (millis() - on_timer < 2500) { stepper2.setStep(SPEED); stepper5.setStep(-SPEED); stepper6.setStep(KECEPATAN); stepper7.setStep(KECEPATAN); } else if (milis() - on_timer < 4000) { stepper2.setStep(-SPEED); stepper5.setStep(KECEPATAN); stepper6.setStep(-SPEED); stepper7.setStep(-SPEED); } else if (milis() - on_timer < 5500) { stepper2.setStep(SPEED); stepper5.setStep(-SPEED); stepper6.setStep(KECEPATAN); stepper7.setStep(KECEPATAN); } else if (milis() - on_timer < 7000) { stepper2.setStep(-SPEED); stepper5.setStep(KECEPATAN); stepper6.setStep(-SPEED); stepper7.setStep(-SPEED); } else { stepper2.setStep(0); stepper5.setLangkah (0); stepper6.setLangkah (0); stepper7.setLangkah (0); } } else { stepper2.setStep(0); stepper5.setLangkah (0); stepper6.setLangkah (0); stepper7.setLangkah (0); } /////////////////////////////////////////////// jika (milis() - set_timer3 2000) { if (millis() - on_timer < 3500) { stepper.setStep(SPEED); stepper2.setStep(KECEPATAN); stepper3.setStep(KECEPATAN); stepper4.setStep(KECEPATAN); stepper5.setStep(KECEPATAN); stepper6.setStep(KECEPATAN); stepper10.setStep(KECEPATAN); stepper11.setStep(KECEPATAN); } else if (milis() - on_timer < 5000) { stepper.setStep(-SPEED); stepper2.setStep(-SPEED); stepper3.setStep(-SPEED); stepper4.setStep(-SPEED); stepper5.setStep(-SPEED); stepper6.setStep(-SPEED); stepper10.setStep(-SPEED); stepper11.setStep(-SPEED); } else if (milis() - on_timer < 6500) { stepper.setStep(SPEED); stepper2.setStep(KECEPATAN); stepper3.setStep(KECEPATAN); stepper4.setStep(KECEPATAN); stepper5.setStep(KECEPATAN); stepper6.setStep(KECEPATAN); stepper10.setStep(KECEPATAN); stepper11.setStep(KECEPATAN); } else if (milis() - on_timer < 8000) { stepper.setStep(-SPEED); stepper2.setStep(-SPEED); stepper3.setStep(-SPEED); stepper4.setStep(-SPEED); stepper5.setStep(-SPEED); stepper6.setStep(-SPEED); stepper10.setStep(-SPEED); stepper11.setStep(-SPEED); } else { stepper.setStep(0); stepper2.setLangkah (0); stepper3.setLangkah (0); stepper4.setLangkah (0); stepper5.setLangkah (0); stepper6.setLangkah (0); stepper10.setLangkah (0); stepper11.setLangkah (0); } } else { stepper.setStep(0); stepper2.setLangkah (0); stepper3.setLangkah (0); stepper4.setLangkah (0); stepper5.setLangkah (0); stepper6.setLangkah (0); stepper10.setLangkah (0); stepper11.setLangkah (0); } if (millis() - set_timer3 2000) { if (millis() - on_timer < 3500) { stepper3.setStep(SPEED); stepper4.setStep(KECEPATAN); stepper8.setStep(KECEPATAN); stepper9.setStep(KECEPATAN); stepper10.setStep(KECEPATAN); stepper11.setStep(KECEPATAN); stepper12.setStep(KECEPATAN); stepper13.setStep(KECEPATAN); } else if (milis() - on_timer < 5000) { stepper3.setStep(-SPEED); stepper4.setStep(-SPEED); stepper8.setStep(-SPEED); stepper9.setStep(-SPEED); stepper10.setStep(-SPEED); stepper11.setStep(-SPEED); stepper12.setStep(-SPEED); stepper13.setStep(-SPEED); } else if (milis() - on_timer < 6500) { stepper3.setStep(SPEED); stepper4.setStep(KECEPATAN); stepper8.setStep(KECEPATAN); stepper9.setStep(KECEPATAN); stepper10.setStep(KECEPATAN); stepper11.setStep(KECEPATAN); stepper12.setStep(KECEPATAN); stepper13.setStep(KECEPATAN); } else if (milis() - on_timer < 8000) { stepper3.setStep(-SPEED); stepper4.setStep(-SPEED); stepper8.setStep(-SPEED); stepper9.setStep(-SPEED); stepper10.setStep(-SPEED); stepper11.setStep(-SPEED); stepper12.setStep(-SPEED); stepper13.setStep(-SPEED); } else { stepper3.setStep(0); stepper4.setLangkah (0); stepper8.setLangkah (0); stepper9.setLangkah (0); stepper10.setLangkah (0); stepper11.setLangkah (0); stepper12.setStep(0); stepper13.setStep(0); } } else { stepper3.setStep(0); stepper4.setLangkah (0); stepper8.setLangkah (0); stepper9.setLangkah (0); stepper10.setLangkah (0); stepper11.setLangkah (0); stepper12.setStep(0); stepper13.setLangkah (0); }//////////////////////////////// stepper.moveStep(); stepper2.moveStep(); stepper3.moveStep(); stepper4.moveStep(); stepper5.moveStep(); stepper6.moveStep(); stepper7.moveStep(); stepper8.moveStep(); stepper9.moveStep(); stepper10.moveStep(); stepper11.moveStep(); stepper12.moveStep(); stepper13.moveStep(); }
pengkodean kedua
Langkah 6: Sebelum Coding…
Anda harus menambahkan perpustakaan baru yang terkait dengan motor langkah.
Jadi, Anda masuk ke situs ini dan mengunduh perpustakaan baru.
blog.danggun.net/2092
Langkah 7: Komunikasi Serial
Anda harus membuat dua arduino mega-telekomunikasi.
if (jumlah_mulai == 0) {
int Data = Serial1.read(); Serial.println(Data); if (Data == 0x01) { start_count = 1; }
Pertama-tama, kita membutuhkan pengkodean ini di Maine Arduino Mega.
if (hitung == 0) { if (milis() - set_timer1 > 1000) { Serial1.write(0x01); jumlah = 1; }
Arduino Mega, yang menerima komunikasi serial, membutuhkan pengkodean ini.
Pengkodean pertama ditempatkan di mana aduino kedua harus bergerak.
Direkomendasikan:
DIY Harry Potter Memindahkan Potret Dengan Raspberry Pi: 3 Langkah
Potret Bergerak Harry Potter DIY Dengan Raspberry Pi: Potret Bergerak yang terinspirasi dari Film Harry Potter. Moving Portrait dibangun menggunakan laptop lama yang rusak. Itu bahkan dapat dibangun menggunakan Raspberry Pi yang terhubung dengan layar atau monitor lama. Bingkai Potret Bergerak terlihat luar biasa, kita dapat melihat foto keluarga
Infinity Mirror and Table (Dengan Alat Santai): 7 Langkah (dengan Gambar)
Cermin dan Meja Infinity (Dengan Alat Santai): Hai semuanya, Beberapa waktu yang lalu saya menemukan instruksi ini dan segera dibawa serta ingin membuatnya sendiri, tetapi tidak bisa mendapatkannya 1) Cermin plexiglass satu arah atau 2) Perute CNC. Setelah sedikit mencari-cari, saya menemukan
Cara Membuat Infinity Mirror Heart Dengan Arduino dan RGB Led: 8 Langkah (dengan Gambar)
Cara Membuat Infinity Mirror Heart Dengan Arduino dan RGB Led: Suatu kali di sebuah pesta, saya dan istri melihat cermin infinity, dan dia terpesona oleh tampilan dan terus berkata saya menginginkannya! Suami yang baik selalu mendengarkan dan mengingat, jadi saya memutuskan untuk membuatkannya untuknya sebagai hadiah hari kasih sayang
Memindahkan Ferris Wheel: 10 Langkah (dengan Gambar)
Pindah Ferris Wheel: Ini adalah kincir ria bergerak sederhana yang saya rancang yang bisa menjadi pengalaman belajar yang menyenangkan bagi anak-anak dan orang dewasa! Tumbuh dewasa, saya selalu ingin tahu seperti apa mainan bergerak di dalam. Oleh karena itu, saya sengaja menggunakan akrilik bening agar
DIY Grid Tied Inverter (tidak memberi makan Grid) Alternatif UPS: 7 Langkah (dengan Gambar)
DIY Grid Tied Inverter (tidak Memberi Makan Grid) Alternatif UPS: Ini adalah posting lanjutan dari Instructable saya yang lain tentang membuat inverter grid tie yang tidak memberi umpan balik ke grid, karena sekarang selalu memungkinkan untuk melakukan ini di area tertentu sebagai proyek DIY dan beberapa tempat tidak mengizinkan makan di sana g