Bintang transformer di pohon Natal



Menjelang tahun baru di taman kanak-kanak diminta membuat mainan pohon Natal. Saya memutuskan untuk membantu dan mengambil bagian teknis untuk pembuatan kerajinan, dan menyerahkan bagian desain kepada anak. Karena Saya tidak mencari cara mudah, saya memutuskan untuk membuat mainan yang paling berteknologi dan itu akan lebih dari sekadar bola api di bola. Saya tidak tahu caranya, tetapi di kepala saya gagasan itu segera matang untuk membuat bintang transformasi menggunakan motor stepper dan LED yang bisa dialamatkan.

Bahan yang digunakan:

  1. Kaca plexiglass untuk penerangan ujung
  2. 28BYJ-48 motor stepper
  3. Pengemudi pada chip ULN2003
  4. Mikrokontroler ATTINY85
  5. LED Strip WS2812

Jika Anda menyinari ujung kaca plexiglass untuk penerangan akhir, maka bukan hanya bagian tepi, tetapi juga bidang itu sendiri yang akan bercahaya. Karena heterogenitas struktur internal plexiglass tersebut, cahaya di dalamnya dipantulkan berulang kali dan dengan demikian bidang tersebut disorot. Saya mencetak selembar kertas pada lembar A4 dan memotong 2 bagian bintang.

gambar



Di salah satu bagian saya mencoba pada motor stepper, menemukan pusat rotasi dan memotong lubang bundar di mana saya menempelkan selotip WS2812 dengan 5 LED. Saya memasang bagian kedua ke poros mesin dan menghubungkan semua ini ke Arduino.



Pustaka Stepper standar untuk mengendalikan motor stepper berisi bug dan tidak memungkinkan Anda untuk memutar berlawanan arah jarum jam, jadi saya menggunakan pustaka TinyStepper_28BYJ_48. Untuk animasi LED saya menggunakan perpustakaan Adafruit_NeoPixel.

Sketsa Bintang Transformer
// Dokumentasi untuk perpustakaan ini dapat ditemukan di:
// github.com/Stan-Reifel/TinyStepper_28BYJ_48
//
//
// Perpustakaan ini mengharuskan motor stepper terhubung ke Arduino
// menggunakan papan driver ULN2003.

// ************************************************ ************************

#sertakan <TinyStepper_28BYJ_48.h>
#termasuk <Adafruit_NeoPixel.h>

// konfigurasi NEO Pixel
#define PIN 0
#define LEDS_COUNT 5
#define RED strip.Color (255, 0, 0)
#define GREEN strip.Color (0, 255, 0)
#define BLUE strip.Color (0, 0, 255)
#define WHITE strip.Color (255, 255, 255)

// penugasan pin, pin digital apa pun dapat digunakan
#define MOTOR_IN1_PIN 1
#define MOTOR_IN2_PIN 2
#define MOTOR_IN3_PIN 3
#define MOTOR_IN4_PIN 4

// buat objek motor stepper
TinyStepper_28BYJ_48 stepper;
Adafruit_NeoPixel strip = Adafruit_NeoPixel (LEDS_COUNT, PIN, NEO_GRB + NEO_KHZ800);

pengaturan batal () {
// sambungkan dan konfigurasikan motor stepper ke pin IO-nya
stepper.connectToPins (MOTOR_IN1_PIN, MOTOR_IN2_PIN, MOTOR_IN3_PIN, MOTOR_IN4_PIN);
// atur kecepatan dan kecepatan akselerasi untuk motor stepper
stepper.setSpeedInStepsPerSecond (256);
stepper.setAccelerationInStepsPerSecondPerSecond (512);

strip.begin ();
strip.show (); // Inisialisasi semua piksel ke 'mati'
}

void loop () {
// Putar motor ke arah maju satu revolusi
stepper.moveRelativeInSteps (410);
untuk (byte i = 0; i <20; i ++) {
fadeInOut (0xff, 0x00, 0x00); // merah
}

// putar mundur 1 putaran, lalu tunggu 1 detik
stepper.moveRelativeInSteps (-410);
untuk (byte i = 0; i <20; i ++) {
fadeInOut (0x00, 0x00, 0xff); // biru
}
}

void fadeInOut (byte merah, byte hijau, byte biru) {
float r, g, b;

untuk (int k = 0; k <256; k = k + 1) {
r = (k / 256.0) * merah;
g = (k / 256.0) * hijau;
b = (k / 256.0) * biru;
setAll (r, g, b);
strip.show ();
keterlambatan (5);
}

untuk (int k = 255; k> = 0; k = k-2) {
r = (k / 256.0) * merah;
g = (k / 256.0) * hijau;
b = (k / 256.0) * biru;
setAll (r, g, b);
strip.show ();
keterlambatan (5);
}
}

membatalkan setAll (byte merah, byte hijau, byte biru) {
untuk (int i = 0; i <LEDS_COUNT; i ++) {
strip.setPixelColor (i, strip.Color (merah, hijau, biru));
}
strip.show ();
}


Itu hidup !!!

Sekarang perlu untuk merakit segala sesuatu dengan kompak dan menggunakan ATTINY85 bukan Arduino. Dipandu oleh instruksi dari situs create.arduino.cc, Anda dapat dengan mudah dan mudah menjahit ATTINY85 dengan sketsa Arduino. Dari 8 kaki, saya menggunakan 7, 4 untuk motor stepper, 1 untuk LED, 2 untuk daya, RESET tetap bebas.



Untuk pemasangan di puncak pohon Natal, pegangan plunger berjalan sempurna.



Setelah pekerjaan dekoratif, bintang mulai terlihat jauh lebih cantik. Gagangnya dibungkus pita satin merah, dan kaca plexiglass ditutupi dengan pernis transparan dengan kilau, dari sini efek cahaya lebih ditingkatkan.



Semua dengan 2020 mendatang, suasana Tahun Baru dan kecerdikan!

Source: https://habr.com/ru/post/id480058/


All Articles