একটি ঘড়ি জন্য একটি টেলিগ্রাম

একটি ঘড়ি জন্য একটি থ্রেড

এখানে আমি একটি বিচক্ষণ অনুপস্থিত থাকার পর am, এখনও অন্য ডিজিটাল ঘড়ি থেকে riproporvi: কিন্তু এখন সবাই জানে…খনি একটি উন্মত্ততা হয়… হয়তো বা আমি অন্য কিছু করবেন না.

আসা এটা এই ঘড়ি জন্ম ?… মার্চ মাসে এমনকি ওয়েব চেষ্টা এবং আমি নেতৃত্বে একটি নির্দিষ্ট ওয়েবসাইট Futura_Elettronica পাওয়া পরীক্ষা করতে কিছু ডিভাইস এ খুঁজছেন girovando: একটি আরজিবি নেতৃত্বে সর্বথা অনুরূপ (Quattro পিন আর,জি,বি,ধনধ্রুব / ক্যাথোড) কিন্তু এটি একটি আরজিবি ছিল না. থাকার সময় 4 ক্যানোনিকাল পা আসলে একটি নেতৃত্বাধীন হয় WS212. এটা এই মত দেখাচ্ছে:

ফুট সবসময় 4 কিন্তু বিভিন্ন সংজ্ঞা সঙ্গে: অথবা DATA_IN, VCC,GND,DATA_OUT. LED এর একটি পার্শ্ব উপর একটি ছিটকিনি পিন চিহ্নিত DATA_OUT. পাওয়ার 5V. LED বিন্যাস: 5মিমি.

কৌতূহল বিড়াল নিহত (বিখ্যাত উক্তি….) তাই আমি একটি প্রথম অর্ডার তৈরি 20 পরীক্ষা এবং পরীক্ষা নেতৃত্বে. আমি বললাম আমি WS2812 নেতৃত্বে ছিল: বা লাইব্রেরি দ্বারা পরিচালিত একটি নির্দিষ্ট প্রোটোকল সিরিয়াল ব্যবহার ADAFRUIT_NEOPIXEL. এটা এই প্রোটোকল বর্ণনা করা সহজ নয়: এর কার্যত একটি ক্রম 24 বিট (8 প্রতিটি রঙের জন্য) রঙ LED আর জন্য সংজ্ঞায়িত সঙ্গে ধারাবাহিকভাবে LED লাইট পাঠিয়েছিলেন, এই অনুযায়ী LED জন্য G এবং B জন্য (উৎস ws2812.pdf).

অবশ্যই সেখানে সময়সীমা পূরণ করা, কিন্তু আমি খুব বেশী চিন্তা করা হয়নি কারণ সব ব্যবস্থাপনা কাজ লাইব্রেরিতে ন্যস্ত করা হয়. এই এলইডি এর বিশেষ বৈশিষ্ট্য সংযোগ ধরণ দেওয়া হয়: প্রতিটি LED পূর্ববর্তী এক সঙ্গে ক্যাসকেড সংযুক্ত করা হয়, এইভাবে একটি কার্যত কোন নির্দিষ্ট সীমা চেইন বিরচন: আসলে এই ঘড়ি আমি ভাল ব্যবহার করতে 112 এলইডি.

এখানে তারপর চূড়ান্ত ফলাফল পূর্বরূপ:

দয়া: তারা, DIY একটি যথার্থ ভূমিধসে এবং এই সময়ে আমি পাস হয়: এটা সহজ ছিল না, এবং শুধুমাত্র এই দিন আমি মূলত পরীক্ষা পরিমাণ স্বল্প.

 

উপার্জন চূড়ান্ত:

আগে আপনি মাটিতে আঘাত আমি সম্ভাব্যতা সমীক্ষা সম্পন্ন (আজ কেতাদুরস্ত) সিদ্ধান্ত নিতে এই এলইডি সংযোগ কিভাবে, যা আরটিসি ব্যবহার, কিভাবে সময় মান আপডেট করার জন্য, কিভাবে রং এবং উজ্জ্বলতা যা দৃশ্যমানতা জন্য গ্রহণযোগ্য হতে পারে এবং সব ভাল উপস্থিতিতে বিবেচনায় বিশেষ করে একটি খাবারের দায়িত্ব অর্পণ করা 112 এলইডি. এই ক্ষমতা এবং মোট শোষণ সমস্যা আমাকে অনেক সময় খরচ: আমি পর্যাপ্ত পাওয়ার সাপ্লাই ছাড়া হচ্ছে ঝুঁকি চালানো চাইনি: ওয়েব উৎস থেকে এই এলইডি প্রতিটি প্রতিটি রঙ জন্য ভাল 20mA শুষে উচিত. তাই এক সাদা রঙ নেতৃত্বে জন্য 60 তম শোষণ মোট সঙ্গে তিন এলইডি চালু করা আবশ্যক. কিন্তু এটা তারপর একটি মিথ্যা সমস্যা সনাক্ত করে কারণ এই ঘড়ি সব চালু করা হবে না 112 এলইডি. কিন্তু অবিকল এড়াতে অপূর্ণতা সঙ্গে ধারাবাহিকভাবে সংযুক্ত এলইডি একটি সিরিজ সঙ্গে কিছু পিসিবি প্রস্তুত করে রেখেছি.

কিছু 200ma প্রবাহ সনাক্ত করা হলে একটি স্বাভাবিক পরীক্ষক সঙ্গে সম্পন্ন পরীক্ষার মতে ব্যবস্থা অনুসরণ করছেন: (উজ্জ্বলতা মান = 25 ও লাইব্রেরি দ্বিতীয় ফাংশন কম মান).

এক নেতৃত্বে চেইন: বন্ধ নেতৃত্বে: 07,7মা; লিট লাল: 08,6মা; সবুজ ও নীল একই; Bianco 10,3ma; রক্তবর্ণ: 09,4; হলুদ: 09,4.

সঙ্গে চেন 2 এলইডি: সুইচ বন্ধ: 15,3; লিট লাল 1: 16,1মা; সবুজ ও নীল একই; সাদা 17,8ma; রক্তবর্ণ / হলুদ 16,9ma; লিট লাল 1+2: 16,9মা: সবুজ ও নীল সঙ্গে Ditto. Bianco 20,3ma; রক্তবর্ণ / হলুদ 18,6.

সঙ্গে চেন 3 এলইডি: সুইচ বন্ধ: 15,7; লিট লাল 1: 16,6; Verde, যেতে ব্লু; লিট লাল 1+2: 17,4; Verde, যেতে ব্লু; সাদা 20,8; রক্তবর্ণ / হলুদ লাল 19,1ma.Acceso 1+2+3: 18,4; সবুজ ও নীল একই; সাদা 23,6ma; রক্তবর্ণ / হলুদ 21.

সঙ্গে চেন 4 এলইডি: সুইচ বন্ধ: 16,2 মা; লিট লাল 1: 17,1; সবুজ ও নীল একই; সাদা 18,8; 18 তম রক্তবর্ণ / হলুদ; লিট লাল 1+2: 17,9 মা; সবুজ ও নীল 18,0 মা; সাদা 21,4; রক্তবর্ণ / হলুদ 19,6; লাল লগইন 1+2+3: 18,8মা; সবুজ ও নীল একই; সাদা 24,2; রক্তবর্ণ / হলুদ 21,5ma; লিট লাল 1+2+3+4: 19,8 মি; সবুজ ও নীল একই; সাদা 26,7; রক্তবর্ণ / হলুদ 23,3.

আপনি লক্ষ্য করতে পারে যে মৌলিক রং (Rosso, Verde, ব্লু) সবসময় হলুদ এবং রক্তবর্ণ সেইসাথে একই মান. ব্যতিক্রম রঙ সাদা দেওয়া হয়. টেস্ট ক্রিকেট থেকে একটি নমুনা সঙ্গে সম্পন্ন 12 নেতৃত্বে এবং একটি পৃথক পাওয়ার সাপ্লাই সুবিধার সুযোগ গ্রহণ (ক্ষমতা ও তারপর একটি ব্যাটারি চার্জার 1A মাইক্রো থেকে পৃথক) আপনি নিম্নলিখিত মান সম্মুখীন হতে পারে: (200ma পূর্ণ স্কেল দিয়ে একটি সাধারণ মিটার সঙ্গে মাপা মান).

উজ্জ্বলতা মূল্য (Neopixel ফাংশন যেমন) = 25

বন্ধ সকল এলইডি: ~ 34,3 / 35ma,

12 নেতৃত্বে শয়নকামরা লাল, Verde, ব্লু –> 41,9/42,0;

12 নেতৃত্বে উজ্জ্বল হলুদ / গোলাপী: –> 51/51,2;

12 উজ্জ্বল সাদা LED রঙ: –> 49,8/49,9

সঙ্গে পরীক্ষা 16 এলইডি: 40 তম বন্ধ. লাল / সবুজ / নীল 16 49 শয়নকামরা / 50mA;

এই মান সঙ্গে এবং একটি হাইপোথিসিস ঝুঁকি, একটি ডায়াল মোট শোষণ 28 এলইডি মধ্যবর্তী হওয়া উচিত 100 ই আমি 150mA. আর তত্ত্ব, সেট 4 অর্ধেই প্রায় হওয়া উচিত 400/600 mA বিদ্যুত. কিন্তু এটা শিল্পের একটি তত্ত্ব রাষ্ট্র শুধুমাত্র সঙ্গে পরীক্ষা আউট বাহিত থাকার অবশেষ 16 এলইডি.

এই পরীক্ষার পর এবং সম্পূর্ণ উপলব্ধি পর চূড়ান্ত ফলাফল মোবাইল ফোনের জন্য একটি ব্যাটারি চার্জার দিয়ে যে ঘড়ি (5ভী,1একজন) সবকিছু ক্রমান্বয়ে কাজ করে: পরে পাওয়ার সাপ্লাই 24 একটানা কয়েক ঘন্টার অপারেশন রয়ে গেছে “ভয়ানক“. যাইহোক, আমি 5V থেকে একটি নির্দিষ্ট পাওয়ার সাপ্লাই নির্বাচিত,2অর্ডার 5V করার জন্য একটি স্থিতিশীল ভোল্টেজ রাখার জন্য (চার্জ শাসন ব্যাটারি প্রায় 0.5V ভোল্টেজ একটি ভোল্টেজ ড্রপ আছে) এবং পরে 24 ঘণ্টা রয়ে গেছে “ভয়ানক“.

আরেকটি বিশেষত্ব মনে রাখা: যখন ক্ষমতা সিস্টেম (সংযুক্ত LED এর সংখ্যা নির্বিশেষে) সব এলইডি তাদের উজ্জ্বলতা সর্বোচ্চ উজ্জ্বল এবং তারপর আপনি একটি শোষণ শিখর crare করতে. সুতরাং মোট শাটডাউন জন্য প্রদান করা আবশ্যক (সফ্টওয়্যার মাধ্যমে) তাৎক্ষণিক পোস্ট সিস্টেমের প্রারম্ভে.

চূড়ান্ত নকশা নির্দিষ্টকরণের দিয়ে শুরু করা যাক:

  1. Quattro প্রদর্শন (আমি ডায়াল কল হবে), ঘন্টা এবং মিনিট প্রদর্শন করে. প্রতিটি পাদ ইমেজ এবং একটি ডিসপ্লের উপমা মধ্যে গঠিত হয় 7 অংশ: প্রত্যেক সেগমেন্ট হয় 4 এলইডি. খরচ এবং দায় মধ্যে সমঝোতা কারণে চয়েস.
  2. দ্বিতীয় মান ভিত্তিতে বিকল্প ঝলকানি দুই LEDs
  3. আরটিসি DS3231 বিবেচিত আরো স্থিতিশীল এবং সঠিক DS1307
  4. একটি তিরস্কারকারী এনালগ পর্যন্ত হ্যান্ডেল করতে 8 উজ্জ্বলতা এমনকি সম্পাদনাযোগ্য গরম মাত্রা
  5. একটি dip_switch একটি 8 অবস্থানের পর্যন্ত নির্বাচন করতে 4 প্রতিটি পাদ সম্পাদনাযোগ্য গরম জন্য রং (প্রতিটি পাদ জন্য দুটি সুইচ).
  6. সময় সেটিং এবং মিনিট প্রয়োজনে আরম্ভের জন্য বোতাম.
  7. সিস্টেমের প্রারম্ভে এবং রিসেট জন্য দুটি বোতাম.

এই বৈশিষ্ট্যের দেওয়া, অনুসরণ হিসাবে ব্যবহার হার্ডওয়্যার:

  • মাইক্রো Arduinio ন্যানো তার আকার জন্য নির্বাচিত এবং ইতিমধ্যে সবকিছু আপনি প্রয়োজন আছে: সংযোগ এবং লোড সফ্টওয়্যার জন্য USB, USB এর মাধ্যমে পাওয়ার.
  • আরটিসি DS3231 সময় এবং তারিখ মান বজায় রাখার জন্য একটি ডিভাইস হিসাবে
  • PCF8574 8 বিট exapander i2c. এই ডিভাইসটি আমার জন্য সংরক্ষণ করার অনুমতি দেয় 8 পিন যাও Arduino. এটা তোলে মান Dip_Swtich সেট পড়া করতে ব্যবহৃত হয়.

এখন আসুন প্রকল্পের কিছু সার্কিট ডায়াগ্রামে দেখতে:

এলইডি এর বৈশিষ্টসূচক সংযোগ:

এই চিত্রটি শো (আংশিকভাবে) কিভাবে তারা এলইডি সংযুক্ত আছেন: প্রতিটি 4 ডায়াল একটি সেগমেন্ট ফর্ম: তারপর 7 অংশ দ্বারা গঠিত হয় 28 মোট নেতৃত্বে. এই এলইডি প্রত্যেকটি পরবর্তী সিরিজে সংযুক্ত করা হয়. এটা হতে হবে সফ্টওয়্যার উপযুক্তভাবে নির্বাচন গোষ্ঠী 4 এলইডি (এবং তারপর একটি সেগমেন্ট) চালু বা বন্ধ. প্রথম নেতৃত্বাধীন প্রবেশদ্বারে একটি রোধ দ্বারা সংযুক্ত হয় 470 ওম. (কিভাবে পবিত্র গ্রন্থে আবৃত্তি করতে). প্রতিটি পাদ তার নিজের অধিকার গ্রুপ: LED এর মুক্তি অ পরের পাদ প্রথম LED এর ইনপুট সঙ্গে সংযুক্ত করা হয়: সেখানে একটি নির্দিষ্ট কারণ নেই. পরীক্ষার সময় আমি লক্ষ্য করেছি যে, এই এলইডি উপাদেয় এবং এটি এক ঘটেছে “অপ্রকৃত“. ই’ পরিষ্কার যে সিরিজের সমস্ত হচ্ছে যথেষ্ট যে এক শুধুমাত্র সমগ্র পরবর্তী চেইন প্রভাবিত করার কিছু সমস্যা হয়েছে. সমস্যার এই ধরনের সমস্যা এড়ানোর জন্য আমি স্বতন্ত্রভাবে পরিচালনা করার সিদ্ধান্ত নিয়েছে (গ্রন্থাগার পারমিট) আমি 4 অর্ধেই. ফলাফলের শুধুমাত্র যা ডায়াল ব্যবহার করতে নির্বাচন প্রোগ্রাম জটিলতা হয়.

সংযোগ ডিভাইসের:

এই স্কিম এটা দেখায় কিভাবে তারা সঙ্গে জড়িত উভয় pcf8574 যে’আরটিসি Ds3231. বস্তুত এই উভয় আরটিসি যে পিসিএফ ডিভাইসের ইতিমধ্যে preassembled জন্য ব্যবহার করা হয়েছে এক দৃষ্টান্তমূলক স্কীম: ডিভাইসের ইনস্টল এবং i2c protocolo ব্যবহার করা সহজ. প্রকল্প এটি একটি অধিকতর সরবরাহ করা হয়েছিল PCF8574 ব্যবহার বাইনারি মোডে সেকেন্ড প্রদর্শনের জন্য 7 বিট. যাতে আরও সিস্টেম আমি তখন ব্যবহার পছন্দের জটিলতা দেখা না ইন 2 বিকল্প জ্বলজ্বলে সঙ্গে নেতৃত্বে. চিত্রে পছন্দ সংযোগ এছাড়াও যাও Arduino পিন যে বোতাম এবং ট্রিমার সংযোগ কাছে দৃশ্যমান.

প্রতিটি পাদ এর পিসিবি:

এই প্রতিটি পাদ চূড়ান্ত পিসিবি বৈধ. আমি একটি ছোট করেছিল কিন্তু নেতৃত্বাধীন 5mm সঙ্গে অনুশীলনে সমস্যাযুক্ত সংযোগ খুব একসঙ্গে বন্ধ হিসাবে প্রমাণিত. দুর্ভাগ্যবশত, আপনি প্রকল্পের প্রথম ব্যাপক ছবি দেখতে পারে, সঠিকতা আলোকিত না হয়.

প্রতিটি পাদ লেআউট:

দৃষ্টান্ত বা উদাহরণ প্রণালী দ্বারা প্রতিটি পাদ প্রত্যেক নেতৃত্বে composes নিম্নলিখিত ব্যবস্থা এবং যুক্তিবিদ্যা সংখ্যাপাতকরণ হয়েছে. প্রতিটি LED এর খাঁজ পিন DATA_OUT চিহ্নিত

 

কন্ট্রোল প্যানেল পিসিবি:

এই প্যানেলে ঘর: উজ্জ্বলতা সামঞ্জস্য জন্য তিরস্কারকারী, আমি 2 এখন মূল্যবোধ ও মিনিট আপডেট করার জন্য বাটন, শুরু বাটন সিস্টেম, রিসেট বাটন, সেতু যে কিভাবে এটি সেট আপ করা হয়েছে তার উপর নির্ভর করে TIME এ বেশী বা কম মূল্যবোধ ও মিনিট আপডেট অনুমতি দেয় তারা আপডেট করা আছে, অবশেষে, অর্ধেই রং পরিবর্তনের জন্য dip_swtich এর হাউজিং.

পিসিবি প্রধান:

এই পিসিবি সংজ্ঞায়িত “প্রধান” এটা মাইক্রো Arduino_Nano ঘর যেমন, I2c ডিভাইসের জন্য বিভিন্ন সংযোজক এবং কন্ট্রোল প্যানেল. ই’ এছাড়া অর্ধেই খাওয়ানোর জন্য পৃথক প্রবেশ প্রদান করা হয়েছে (প্রত্যাশিত, কিন্তু তারপর ব্যবহার করা হয় না). মাইক্রো USB বর্তনী বাকি ক্ষমতা প্রদান করে.

পিসিবি BUS_QUADRI এবং LED_SECONDS

এই দুই পিসিবি সমর্থন আছে: BUS_QUADRI এটা তোলে সংযোগ পারবেন 4 পিসিবি প্রতি অর্ধেই প্রধান ইনপুট সংকেত এবং প্রতিটি খাওয়ানোর সঙ্গে. LED_SECONDS ঘর দুই এলইডি একটি দ্বিতীয় হারে ফ্ল্যাশ আবশ্যক. এই পিসিবি অবস্থিত তিন ঘন্টা ডায়াল দুই ও দুই মিনিট; পাওয়ার সাপ্লাই এবং সংকেত মাধ্যমে সংযুক্ত করা হয় BUS_QUADRI.

 

ঘড়ি নির্মাণ

ছবিতে আপনি দেখতে পারেন নিচের কিভাবে অর্ধেই এর হাউজিং গড়ে উঠেছে:

কাঠের বেস ও পাশ plexiglass সঙ্গে 28cm একটি ফ্রেম দিয়ে তারা থেকে glued হয় 4 ফটো অর্ধেই: সেকেন্ডের জন্য এবং ডান পিসিবি কেন্দ্র দুটি এলইডি BUS_QUADRI প্রধান সংযোগ জন্য. প্রদত্ত যে এলইডি এছাড়াও সর্বনিম্ন উজ্জ্বলতা এখনও খুব উজ্জ্বল, এড়াতে পৃথক এলইডি উজ্জ্বলতা ডান এবং বাম দিকে আবরণ করতে পারেন, প্রতিটি পাদ হয় “আবৃত” একটি কালো মাস্ক (plasticized) পৃথক অংশ হাইলাইট করতে. প্রতিটি সেগমেন্ট একটি কালো পিচবোর্ড ফালা সঙ্গে আবৃত ছিল. এখানে কিভাবে presena এর “নগ্ন”.:

এই সিস্টেমে আপনি একটি ভাল ভিউ “আলাদা” যে ছাড়া সমগ্র ঘড়ি একটি ডায়াল উজ্জ্বলতা পার্শ্বীয় হস্তক্ষেপ নেই. (মনে রাখবেন যে লাল রং,সবুজ, ব্লু যাইহোক, তারা একে অপরের থেকে একটি ভিন্ন উজ্জ্বলতা আছে).

সিস্টেমের হৃদয়:

কন্ট্রোল প্যানেল যা plexiglass বক্স বন্ধ ভাবমূর্তি নিচের ছবিতে যেখানে মাইক্রো Arduino_Nano আয়োজিত হয়, আর আরটিসি PCF8574 এবং dials প্রতি সংযোগকারীগুলিকে. প্যানেল তিরস্কারকারী নিয়ে গঠিত (10কে) উজ্জ্বলতা সামঞ্জস্য জন্য, মিনিট ঘন্টা আপডেটের জন্য বোতাম দ্বারা. শুরু বাটন এবং পুনরায় সেট, সময় একটি ইতিবাচক বা নেতিবাচক মান আপডেট করার জন্য অবশেষে সেতু. ডান দিকে DIPSWITCHES এবং প্রতিরোধকের pull_up অ্যারে.

 

এল’ সফটওয়্যার বাস্তবায়ন

যদি আমি জীবনে জটিলতা দেখা না সন্তুষ্ট না হন: পরিচালনা একটি ঘড়ি কঠিন নয় যদি সত্যিই একটি শিক্ষানবিস নয়. আমি নিজেকে পড়ার সীমাবদ্ধতা একটি খুব সহজ স্কেচ দলে পরিণত করতে পারেন’ আরটিসি পাঠোদ্ধারতা মান এবং dials উপর এক্সপোজার.

কিন্তু তারপর থেকে “ক্ষুধা খাদক দিয়ে আসে” আমি একটি স্কেচ জড়িত বাস্তবায়িত:

  • ম্যানেজমেন্ট 4 গ্রন্থাগার মাধ্যমে dials ADAFRUIT_NEOPIXEL.
  • ম্যানেজমেন্ট’ প্রয়োজন হলে মূল্যবোধের আপডেট সঙ্গে আরটিসি. (DS1307 তুলনায় যদি এটা আরো যথাযথ তা, শুধুমাত্র গ্রীষ্ম / শীতকালীন সময় জন্য যদি মাঝে মাঝে আপডেট করা).
  • উজ্জ্বলতা ম্যানেজমেন্ট দ্বারা নির্দিষ্ট ব্যাপ্তি অনুযায়ী তারতম্য 8 সর্বোচ্চ সীমা একটি সর্বনিম্ন থেকে মানগুলি (এমনকি যদি এটি সর্বাধিক সহনীয় নয়) অ্যানালগ প্রদর্শন সঙ্গে একটি তিরস্কারকারী দ্বারা.
  • পৃথক ডায়াল রঙ ব্যবস্থাপনা: প্রতিটি পূর্ববর্তী এবং পরবর্তী থেকে একটি ভিন্ন রঙ থাকতে পারে: একটি DIPSWITCHES মাধ্যমে আপনাকে একটি নির্বাচন করতে পারেন 4 রং সংজ্ঞায়িত: Rosso, ভার্দ, ব্লু, রোসাঃ. আমি এই রং বেছে নেওয়া হয়েছে কারণ তারা বেশী যারা “কম পাওয়ার লাগতে”.

ম্যানেজমেন্ট দর্শনের:

আমি ইতিমধ্যে সংযোগ সমস্যার বা একাধিক ব্যর্থতা এড়াতে আছে জ্ঞাপিত হিসাবে, আমি পরিচালনা করার সিদ্ধান্ত নিয়েছে 4 অর্ধেই স্বতন্ত্রভাবে (তারপর 28 ডায়াল নেতৃত্বে). আমি তখন সংজ্ঞায়িত 4 লাইব্রেরির দৃষ্টান্ত ADAFRUIT_NEOPIXEL প্রতিটি পাদ পৃথক ব্যবস্থাপনা প্রাপ্ত. এই হ 'ল একটি জটিলতা ফলে কারণ স্কেচ স্বতন্ত্রভাবে এবং ঘন্টা এবং মিনিটের জন্য পৃথক ডায়াল বন্ধ সুইচিং পরিচালনা করতে গ্রহণ করা আবশ্যক.

সব’ স্কেচ শুরুর স্থান পর লাইব্রেরির আরম্ভের তৈরি করা আবশ্যক এখন পৃথক অর্ধেই বন্ধ: এই র্যান্ডম রং এবং সর্বোচ্চ উজ্জ্বলতা হালকা আপ. প্রতিটি শৃঙ্খল রঙ শূন্য পাঠাতে হবে চালু করতে: মূলত কালো. একটি বিকল্প শুন্যতে উজ্জ্বলতা আনতে হতে পারে =.

স্কেচ প্রোটোকল শুরুর সঙ্গে চলতে তারের I2c ডিভাইস পরিচালনার জন্য, পড়ার মাধ্যমে DIP_SWITCH রং নির্ধারণ করতে, উজ্জ্বলতা পড়ার জন্য তিরস্কারকারী সঙ্গে, তাহলে ঘনঘন মূল্যবোধের পড়া শুরু’ আরটিসি এবং সঞ্চালিত তাদের নিজ নিজ মধ্যে ঘন্টা এবং মিনিট সময় প্রদর্শন ভুক্তভোগী 4 অর্ধেই. তখনই কন্ট্রোল প্যানেল যেকোনো একটি বোতামে পড়া অপেক্ষা. তাহলে টেপা হলে ঘন্টা বোতাম আপেক্ষিক মান বেশী বা কম মাথা গলান জামাবিশেষ অবস্থান উপর নির্ভর করে আপডেট “+/-“. এখন এটি পরিবর্তিত মান প্রদর্শন করা হয়. একই মিনিট মানের জন্য কিছু ঘটে তাহলে সংশ্লিষ্ট বাটন টেপা হলে. বোতাম টিপলে “শুরু” স্কেচ চূড়ান্ত চক্র আরম্ভ করে: যদি সেখানে হয়েছে আপডেট এসব পুনরায় লোড করা হয়’ আরটিসি. বহুবর্ষজীবী লুপ সার্চ ক্ষেত্রে পরিবর্তন effecting জন্য উজ্জ্বলতা এবং রং Dip_Swtich তারতম্য তিরস্কারকারী অবস্থান. তারপর এর ঘনঘন মান পড়া হয়’ আরটিসি এবং কেবল যদি তা বহন করে তারা বৈচিত্রময় প্রদর্শন হয়.

কার্যভারে পিন Arduino:

deifinisce নীচের টেবিলে যেমন যাও Arduino পিন হয়েছে বরাদ্দ:

পিন

কার্যভারে

A0

উজ্জ্বলতা জন্য ইনপুট এনালগ তিরস্কারকারী

পিন 2

DataIn ডায়াল 1

পিন 3

DataIn ডায়াল 2

পিন 4

DataIn ডায়াল 3

পিন 5

DataIn ডায়াল 4

পিন 6

HOURS ঘন্টা বোতাম (Pull_Up)

পিন 7

বোতাম মিনিট (Pull_Up)

পিন 8

শুরু (Pull_Up)

পিন 9

সুইচ +/- (Pull_Up)

পিন 10

নেতৃত্বাধীন সেকেন্ড ফ্ল্যাশিং

পিন করুন A4

এস্ ডি প্রতি আরটিসি ই DS3231

পিন A5

SCL প্রতি আরটিসি ই DS3231

 

লাইব্রেরি ADAFRUIT_NEOPIXEL:

ডাউনলোডগুলি eponymous সাইটে (একটি আপডেট দুটি সংস্করণ আছে এবং অন্য যে NEO_PIXEL চক্রের সঙ্গে যোগাযোগ ও Neo_Pixel ম্যাট্রিক্স পরিচালনা) কয়েক ফাংশন সঙ্গে এই লাইব্রেরি এলইডি WS2812 প্রায় সীমাহীন সংখ্যক সব ব্যবস্থা করতে সক্ষম. প্রধান কার্যাবলী নিম্নরূপ সংক্ষিপ্ত করা যেতে পারে:

প্রথম আপনি নিম্নলিখিত পরামিতি সঙ্গে বস্তুর instantiate প্রয়োজন:

Adafruit_NeoPixel পিক্সেল = Adafruit_NeoPixel (NUMPIXELS, পিন, NEO_RGB + NEO_KHZ800);

ঘুঘু: পিক্সেল নাম উদাহরণস্বরূপ দেওয়া হয়, NUMPIXELS সংযুক্ত LED এর সংখ্যা (শৃঙ্খল প্রথম অফসেট সঙ্গে চিহ্নিত করা হয় “শূন্য” এবং মোট 28 প্রতি পাদ), পিন প্রথম সংযোগ করার জন্য যাও Arduino ডিজিটাল পিন চিহ্নিত DATA_IN প্রতিটি চেন নেতৃত্বাধীন. (টেবিল precednte দেখুন). NEO_RGB + NEO_KHZ800 এটা তোলে ইঙ্গিত করে যে এলইডি রঙের ক্রম আর-জি-বি বিন্যাস এবং 800Hkz মধ্যে ফ্রিকোয়েন্সি রয়েছে. কিছু উদাহরণ ডাউনলোড করা যেটা প্রায় মান জন্য. ই’ প্রতিটি একটি ভিন্ন নাম দান একাধিক বস্তু instantiate করা সম্ভব (স্পষ্টত). এই সংজ্ঞা পরিবর্তনশীল বিভাগে ঢোকানো হবে.

বিভাগে সেটআপ জন্য প্রতিটি উদাহরণস্বরূপ গ্রন্থাগার আরম্ভ আবশ্যক: nome_istanza.begin(). স্কেচ, সেখানে তাই হয় 4 এই বাক্যের.

নিম্নলিখিত ফাংশন প্রতিটি ইনস্ট্যান্স প্রকৃত ব্যবস্থাপনা সঞ্চালন (এর সাথে সংশ্লিষ্ট অন্যান্য শৃঙ্খল). উজ্জ্বলতা ফাংশন নিয়ন্ত্রিত হয়: nome_istanza.setBrightness(মান) এবং এটি এলইডি সমগ্র শৃঙ্খল প্রয়োগ করা হয়.

প্রতিটি LED শৃঙ্খল শক্তি (ricodiamoci হয় 28 শৃঙ্খল) এটি উভয় LED এর অবস্থান নির্দেশ দিলে (গোড়া থেকে তার অফসেট) যে রং সংযুক্ত করার উদ্দেশ্যে প্রয়োজনীয়. এটা অনুসরণ প্রতিটি LED শৃঙ্খল জন্য একটি ভিন্ন রঙ নির্ধারিত করা যেতে পারে. ফাংশন দুই ফরম্যাটের হয়েছে:

instance_name.setPixelColor(Led_Offset,nome_istanza.Color(R,ছ,খ)); এই লাইব্রেরি সঙ্গে রঙ devolved হয় মান R1, G1, B1 সংজ্ঞায়িত অনুযায়ী কোডিং (দিতে 255), অন্যথায় দ্বিতীয় বিন্যাস direclty রঙের কোড সংজ্ঞায়িত করে (32 বিট স্বাক্ষরবিহীন): nome_istanza.setPixelColor(Led_Offset,codice_colore).

স্কেচে একটি চক্র সঞ্চালিত হয় 28 পুনরাবৃত্তিও দায়িত্ব অর্পণ করা এবং তারপর প্রতিটি পাদ এর এলইডি চেইন অব একটি সেগমেন্ট চালু.

এই সমস্ত কোনো ফলাফল হতে না যদি এটা ফাংশন সঞ্চালিত হয় নি: nome_instanza.show(). এই ফাংশনটি সবসময় সম্পাদনা করা উচিত যদি আমরা এলইডি বা বন্ধ চালু বা তার উজ্জ্বলতা পরিবর্তন দেখতে চাই.

একটা প্রতিফলন আধুনিক ফাংশন ব্যবহার সম্পর্কে করিতে হয়: এতে কেবলমাত্র একটি LED বন্ধ / চালু করুন অথবা নির্দিষ্ট ফাংশন পর উজ্জ্বলতা তারতম্য আসে, শুধু ফাংশন চালানোর প্রদর্শনী() প্রোগ্রাম সঞ্চালন করতে. কিন্তু হবে (এই ক্ষেত্রে) এলইডি চালু / বন্ধ চালু রাখতে হবে বেশি এক থেকে দুই কৌশল ব্যবহার করা যেতে পারে তুলনায়: চক্র / বন্ধ সুইচিং নির্দিষ্ট ফাংশন সম্পাদন এবং চক্র শেষে ফাংশন প্রদর্শনী সম্পাদন করতে() অথবা একই চক্র চলাকালীন নিচে চালানো ফাংশন দেন().

এখানে একটি উদাহরণ (স্কেচ করতে নালীর). রুটিন যে LEDs বন্ধ সক্রিয়: থেকে চেন NQ সংখ্যা 1 একটি 4 হিসাবে রুটিন এক পাদ অথবা সমস্ত অফ পাওয়ার অন্তর্ভুক্ত (NQ = 0).

অকার্যকর হরতাল(বাইট NQ)
{ int- এ কেএল;
যদি (NQ == 0 || NQ == 1)
{ জন্য (কেএল = 0; এ < NUMPIXELS; অপরাহ্ন ++,) QDR_DEC_ORE.setPixelColor(এ,0);
QDR_DEC_ORE.show(); }

এই ক্ষেত্রে ফাংশন শো() লুপ জন্য শেষে সঞ্চালিত হয়.

এই উদাহরণে lumimosità শুধুমাত্র পরে প্রদর্শনী ফাংশন মৃত্যুদন্ড কার্যকর করা হয় যদি এটা পরিবর্তিত হয়():

QDR_DEC_ORE.setBrightness(Lumen_Value);
QDR_DEC_ORE.show();

আরেকটি লাইব্রেরি ফাংশন রঙ LED নির্ধারিত সনাক্ত করে: বিন্যাসে রঙের কোড ফেরৎ 32 বিট স্বাক্ষরবিহীন: nome_istanza.getPixelColor(Led_Offset).

 

উপসংহার:

আমি আশা করি আমি পর্যাপ্ত মার্চ থেকে এই প্রকল্পের ব্যাখ্যা এখন কি সামান্য অবসর সময় দখল করার. আমি সাধারণত চেয়ে বেশি উৎসর্গ না 2 ঘণ্টা এই শখ একটি দিনের: আমি প্রোগ্রামিং মধ্যে কিছু অভিজ্ঞতা থাকতে তাই এটি প্রোগ্রামিং সমস্যা করা কঠিন. আমি একটি প্রকল্প upgrandig কথা ভাবছি: এছাড়াও তাপমাত্রা প্রদর্শনের দেখা যে DS3231 এছাড়াও সেন্সর এবং রঙের র্যান্ডম পরিবর্তন গৃহে প্রবেশ. আমরা দেখতে পাবেন….

আমি সব যাহাই হউক না কেন ধন্যবাদ ElettroAmici সময়ের জন্য তারা এই নিবন্ধটি পড়া ব্যয় করেছেন. আমি জানি আমি পুনরায় করছি…..এই এখনও অন্য ঘড়ি. যাই হোক, তারা এই প্রকল্প সম্পর্কে ডকুমেন্টেশন বা অন্যান্য তবেই ঐ করার জন্য পাওয়া যায়.

ধন্যবাদ

Gvsoft Gugno 2019

gvsoft75@hotmail.com

2 প্রত্যুত্তর
  1. Amilcare
    Amilcare বলেছেন:

    চমৎকার এখন হিসাবে আপনি অভ্যস্ত হয়ে গেছে.
    আমি আপনার নিবন্ধ যোগ করেছেন তারা একটু ডায়াগ্রামে প্রসারিত যদিও অনেক ইমেজ নিজেদের স্বল্প রেজল্যুশন দেখতে পারবেন না, কিছুই বেশী ভালো হবে

    • gvsoft
      gvsoft বলেছেন:

      ধন্যবাদ, Amilcare, উল্লেখযোগ্য বিলম্ব যদিও, কিন্তু আমি কিছু স্বাস্থ্য সমস্যা হল সোমবার সমাধান হওয়া উচিত ছিল 15 সেমি.
      আমি মন্তব্য করতে চেয়েছিলেন, কিন্তু স্পষ্টত আমি আমার নিবন্ধটি উপর মন্তব্য করতে পারবেন না. তাই আমি এই এলইডি ব্যবহার করতে আগ্রহী হতে পারে তাদের জন্য কিছু প্রস্তাবনা প্রদান এই প্রতিক্রিয়ায় এই সুযোগে. 2A almento থেকে 5V থেকে একটি ভাল পাওয়ার সাপ্লাই বা 3V জন্য প্রদান. একটি ক্যাপাসিটরের রাখুন 1000 পিএসইউ এর UF আউটপুট. এক সব এলইডি পর এক পরীক্ষা করে দেখুন ব্যবহার করতে: আমি uina শৃঙ্খল চেষ্টা করার জন্য একটি ছোট পিসিবি ছিল 8 নেতৃত্বে আবিষ্কার যে কিছু LED এর “অপ্রকৃত” এবং যারা তাকে অনুসরণ যারা “পাগল”. আপনি ভাল পেশাদারী পিসিবি পরীক্ষা করতে একটি সুযোগ না থাকে তাহলে বিশেষ করে এক তালা লাগান DOUT সঙ্গে সংযোগ স্থাপন করে ট্র্যাক করে. শৃঙ্খল শেষে (বা গোড়ার দিকে) একটি সিরামিক consensatore সন্নিবেশ (কোড 104). মনে রাখবেন যে সিস্টেমে powering সময়, সমস্ত এলইডি উপর সর্বাধিক উজ্জ্বলতা সাধারণত নীল রঙ এবং কিছু সাদা সুইচড হয় Bear: এই একটি শক্তি খরচ শিখর বোঝা. সুতরাং প্রথম জিনিস ফাংশন শুরু পর করতে() তা প্রদর্শন ফাংশন শৃঙ্খল বন্ধ আছে() বা একটি লুপ প্রতিটি LED রঙ কালো পাঠায় যে সঙ্গে (আরজিবি: 0,0,0).
      সেখানে চেন এলইডি সংখ্যা কোন সীমাবদ্ধতা রয়েছে, মা, আপনি নিবন্ধ দেখা যায় যেমন, আমি 112 এলইডি দ্বারা পরিচালিত হয় 4 বিভিন্ন চেইন. এই প্রোগ্রামিং একটি জটিলতা বোঝা কিন্তু এটাকে সহজ করে ফেলি এবং ভাল কিছু ঠিকঠাক সমাধান: এই ক্ষেত্রে প্রথম পাদ মধ্যে (ঘণ্টা কয়েক ডজন) পরে কিছু সময় সমস্যার দিতে শুরু হয় এবং আমি একটি নতুন এক ছিল: সেখানে ছিল সম্ভবত একটি নেতৃত্বে “অপ্রকৃত” কিন্তু যখন তিনি চেয়েছিলেন !!!!.
      আবার ধন্যবাদ Amilcare

উত্তর দিন

আলোচনায় যোগ দিতে চান?
অবদান নির্দ্বিধায়!

উত্তর দিন