আমি বর্তমানে আরডিনো প্রকল্প বইয়ের # 14 প্রকল্পে আছি।
আমি আমার আরডিনো ব্যবহার করে আমার ল্যাপটপে একটি প্রসেসিং স্কেচ নিয়ন্ত্রণ করার চেষ্টা করছি। এটি একটি চিত্রের পটভূমি নিয়ন্ত্রণ করতে একটি পেন্টিওমিটার ব্যবহার করে সম্পন্ন হয়।
আরডুইনো কোড:
void setup(){
Serial.begin(9600);
}
void loop(){
Serial.write(analogRead(A0)/4);
}
প্রক্রিয়াকরণ:
//imports serial library
import processing.serial.*;
//setups the serial object
Serial myPort;
//creates an object for the image
PImage logo;
//variable to store background color
int bgcolor = 0;
void setup(){
colorMode(HSB,255);
logo = loadImage("http://arduino.cc/logo.png");
size(logo.width,logo.height);
println("Available serial ports");
println(Serial.list());
myPort = new Serial(this,Serial.list()[0],9600);
}
//equivalent of arduino's loop function
void draw(){
if(myPort.available() > 0)
{
bgcolor = myPort.read();
println(bgcolor);
}
background(bgcolor,255,255);
image(logo,0,0);
}
এখন, কোডটি কাজ করার সময় এবং আমি পেন্টিওমিটারটি ঘুরিয়ে দেওয়ার সাথে সাথে পটভূমির রঙ পরিবর্তিত হচ্ছে , পোটিনোমিটারটি ঘুরিয়ে দেওয়া এবং পটভূমি পরিবর্তন রঙ দেখার মধ্যে এবং প্রসেসিংয়ের সিরিয়াল মনিটরে আরডুইনো / পন্টিওমিটার পরিবর্তনের মধ্যে একটি বিশাল পিছনে আছে।
আমি যা চেষ্টা করেছি:
- সিরিয়াল যোগাযোগের গতি পরিবর্তন করা
আমি লক্ষ করেছি যে আমি যখন সিরিয়াল যোগাযোগের গতি হ্রাস করি, যেমন প্রায় 100, তখন পেন্টিয়োমিটার ঘুরিয়ে দেওয়ার এবং এটি আমার ল্যাপটপে পরিবর্তন দেখা দেখার মধ্যে দেরি হ্রাস পায় প্রায় 1 সেকেন্ডে। যাইহোক, আমি যখন সিরিয়াল যোগাযোগের গতি আরও কমিয়ে আনি, উদাহরণস্বরূপ 1 এর মান, তখন বিলম্বটি আবার বেড়ে যায়।
ফ্লিপ দিকে, 9600 স্ট্যান্ডার্ড গতিতে, ল্যাপটপ / প্রসেসিংয়ে পেন্টিয়োমিটারের পরিবর্তনের আগে প্রায় 5 সেকস ++ দেরি বিশাল।
কেন যোগাযোগের গতি হ্রাস (একটি নির্দিষ্ট পয়েন্ট অবধি) সময়ের ব্যবধান হ্রাস পাবে এবং এটি বৃদ্ধি করা সময়ের ব্যবধান বৃদ্ধি করবে? এছাড়াও, আমি কি তা কি তাত্ক্ষণিক কাছাকাছি করতে পারি?
loop()
। এটি বেশ সম্ভব যে আপনার প্রসেসিং প্রোগ্রামটি এটি চালিয়ে যাওয়ার জন্য পর্যাপ্ত দ্রুত চলমান না।loop()
আপনার আড়ডিনো কোডটি কমিয়ে দেওয়ার জন্য বিলম্ব করার চেষ্টা করুন ; যেমনdelay(50)
।