Arduino Dimmer Uygulaması (Processing)

0
1096
Okunma

Arduino Dimmer

Arduino Dimmer

Arduino Dimmer. Bu örnek, bir LED’in parlaklığını kontrol etmek için kişisel bilgisayardan Arduino veya Genuino kartına nasıl veri gönderileceğini gösterir. Veriler, her biri 0 ile 255 arasında değişen tek tek baytlarda gönderilir. Çizim, bu baytları okur ve LED’in parlaklığını ayarlamak için bunları kullanır.

Bilgisayar seri portuna erişebilen herhangi bir yazılımdan panele bayt gönderebilirsiniz. İşleme ve Max / MSP sürüm 5 için örnekler aşağıda gösterilmiştir.

Donanım

  • Arduino veya Genuino
  • LED
  • 220 ohm direnç

Arduino Uno, ATmega328P tabanlı bir mikro denetleyici karttır. 14 adet dijital giriş / çıkış pini (6’sı PWM çıkışı olarak kullanılabilir), 6 analog giriş, 16 MHz kristali, bir USB bağlantısı, bir güç girişi, bir ICSP başlığı ve bir sıfırlama düğmesi vardır. Mikrodenetleyiciyi desteklemek için gereken her şeyi içerir; Başlamak için bir USB kablosuyla bir bilgisayara bağlayın ya da AC-DC adaptörü ya da pille çalıştırın. UNO’yu, yanlış bir şey yapmadan çok fazla endişe etmeden tamir edebilir, en kötü durum senaryosunu değiştirebilirsiniz. Birkaç dolara çip alır ve tekrar kullanabilirsiniz.”

Gerekli Yazılım

Devre

220 ohm akım sınırlama rezistörünü seri olarak bir LED ile dijital pim 9’a bağlayın. LED’in uzun, pozitif bacağı (anot) direncin çıkışına, kısa, negatif bacak (katot) zemine(-) bağlı olarak bağlanmalıdır.

Kod

/*
Dimmer

Bu durumda bilgisayardan Arduino kartına veri göndermeyi gösterir.
bir LED'in parlaklığını kontrol etmek için. Veriler ayrı baytlarda gönderilir,
Her biri 0 ile 255 arasında değişir. Arduino bu baytları okur ve bunları
LED'in parlaklığını ayarlayın.

Devre:
- Dijital pin 9'dan toprağa bağlı LED.
- İşleme, Max / MSP veya başka bir seri uygulamaya seri bağlantı

2006 oluşturuldu
David A. Mellis tarafından
değiştirildi 30 Ağu 2011
Tom Igoe ve Scott Fitzgerald tarafından

Bu örnek kod kamu malıdır.
http://www.arduino.cc/en/Tutorial/Dimmer
*/

const int ledPin = 9;      // LED'in bağlı olduğu pin

void setup() {
  // seri iletişimi başlatır:
  Serial.begin(9600);
  // ledPin'i bir çıkış olarak başlatır:
  pinMode(ledPin, OUTPUT);
}

void loop() {
  byte brightness;

  // bilgisayardan veri gönderilip gönderilmediğini kontrol et:
  if (Serial.available()) {
    // en son baytı oku (0'dan 255'e kadar olacak):
    brightness = Serial.read();
    // LED'in parlaklığını ayarlayın:
    analogWrite(ledPin, brightness);
  }
}

/* Bu örnek için Processing kodu

// Dimmer - bir seri bağlantı noktası üzerinden bayt gönderir
// David A. Mellis tarafından
// Bu örnek kod genel etki alanında.


  import processing.serial.*;
  Serial port;

  void setup() {
    size(256, 150);

    println("Kullanılabilir seri portlar:");
    // İşlem 2.1 veya daha yenisini kullanıyorsanız, Serial.printArray () öğesini kullanın.
    println(Serial.list());

    // Bu listedeki ilk bağlantı noktasını kullanır (sayı 0). Bağlantı noktasını seçmek için bunu değiştirin
    // Arduino kartınıza karşılık gelir. Son parametre (örn. 9600)
    // iletişimin hızı. Bu iletilen değere karşılık gelmelidir
    // Arduino taslağınızda // Serial.begin ().

    port = new Serial(this, Serial.list()[0], 9600);

    // Arduino kartının kullandığı portun ismini biliyorsanız, belirtebilirsiniz.
    // doğrudan böyle.
    // port = yeni Seri (bu, "COM1", 9600);

  }

  void draw() {
    // siyahdan beyaza bir degrade çizme
    for (int i = 0; i < 256; i++) {
      stroke(i);
      line(i, 0, i, 150);
    }

    // farenin mevcut X konumunu, seri bağlantı noktasına
    // tek bir bayt

    port.write(mouseX);
  }

*/
/* Bu örnek için Max / MSP v5 düzeltme eki

----------begin_max5_patcher----------
1008.3ocuXszaiaCD9r8uhA5rqAeHIa0aAMaAVf1S6hdoYQAsDiL6JQZHQ2M
YWr+2KeX4vjnjXKKkKhhiGQ9MeyCNz+X9rnMp63sQvuB+MLa1OlOalSjUvrC
ymEUytKuh05TKJWUWyk5nE9eSyuS6jesvHu4F4MxOuUzB6X57sPKWVzBLXiP
xZtGj6q2vafaaT0.BzJfjj.p8ZPukazsQvpfcpFs8mXR3plh8BoBxURIOWyK
rxspZ0YI.eTCEh5Vqp+wGtFXZMKe6CZc3yWZwTdCmYW.BBkdiby8v0r+ST.W
sD9SdUkn8FYspPbqvnBNFtZWiUyLmleJWo0vuKzeuj2vpJLaWA7YiE7wREui
FpDFDp1KcbAFcP5sJoVxp4NB5Jq40ougIDxJt1wo3GDZHiNocKhiIExx+owv
AdOEAksDs.RRrOoww1Arc.9RvN2J9tamwjkcqknvAE0l+8WnjHqreNet8whK
z6mukIK4d+Xknv3jstvJs8EirMMhxsZIusET25jXbX8xczIl5xPVxhPcTGFu
xNDu9rXtUCg37g9Q8Yc+EuofIYmg8QdkPCrOnXsaHwYs3rWx9PGsO+pqueG2
uNQBqWFh1X7qQG+3.VHcHrfO1nyR2TlqpTM9MDsLKNCQVz6KO.+Sfc5j1Ykj
jzkn2jwNDRP7LVb3d9LtoWBAOnvB92Le6yRmZ4UF7YpQhiFi7A5Ka8zXhKdA
4r9TRGG7V4COiSbAJKdXrWNhhF0hNUh7uBa4Mba0l7JUK+omjDMwkSn95Izr
TOwkdp7W.oPRmNRQsiKeu4j3CkfVgt.NYPEYqMGvvJ48vIlPiyzrIuZskWIS
xGJPcmPiWOfLodybH3wjPbMYwlbFIMNHPHFOtLBNaLSa9sGk1TxMzCX5KTa6
WIH2ocxSdngM0QPqFRxyPHFsprrhGc9Gy9xoBjz0NWdR2yW9DUa2F85jG2v9
FgTO4Q8qiC7fzzQNpmNpsY3BrYPVJBMJQ1uVmoItRhw9NrVGO3NMNzYZ+zS7
3WTvTOnUydG5kHMKLqAOjTe7fN2bGSxOZDkMrBrGQ9J1gONBEy0k4gVo8qHc
cxmfxVihWz6a3yqY9NazzUYkua9UnynadOtogW.JfsVGRVNEbWF8I+eHtcwJ
+wLXqZeSdWLo+FQF6731Tva0BISKTx.cLwmgJsUTTvkg1YsnXmxDge.CDR7x
D6YmX6fMznaF7kdczmJXwm.XSOOrdoHhNA7GMiZYLZZR.+4lconMaJP6JOZ8
ftCs1YWHZI3o.sIXezX5ihMSuXzZtk3ai1mXRSczoCS32hAydeyXNEu5SHyS
xqZqbd3ZLdera1iPqYxOm++v7SUSz
-----------end_max5_patcher-----------

*/

Processing Kodu

Yukarıdaki kod örneğindeki İşleme taslağı, LED’i karartmak için baytları bilgisayar seri portundan karta çıkarır.

Max kodu

Yukarıdaki kod örneğindeki Max / MSP yaması aşağıdaki görüntüye benziyor. Kopyalayın ve yeni bir yama penceresine yapıştırın.

Kaynak:arduino.cc

1 Yıldız2 Yıldız3 Yıldız4 Yıldız5 Yıldız 1 Oydan 5,00 Puan. Bu yazıya oy vermek ister misiniz?
Loading...
Elektronik, Bilim, Teknoloji, Müzik, Tasarım.
Paylaş

CEVAP VER

Please enter your comment!
Please enter your name here

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.