පන්සලේ පිරිත් දාන්න Arduino Alarm Clock එකක් හදමු
කොහොමද හැමෝටම. අද post එකෙන් කියලා දෙන්න යන්නෙ adjustable alarm දෙකක් තියන alarm clock එකක් arduino වලින් හදන්නෙ කොහොමද කියලා.
මෙතනදි වෙන්නෙ අපි සකස් කරන වෙලාවකට relay එකක් On සහ off කිරීම. තවත් විදියකට කිව්වොත් මේක ටයිමර් එකක් විදියට උනත් ගන්න පුලුවන්. හිතන්න, අපේ පන්සල් වල සාමන්යයෙන් උදේට සහ හවසට හැමදාම පිරිත් වගේ දේවල් දානවා නේ. එතකොට අපිට පුලුවන් ඒ sound system එකට මේ උපකරනයේ relay එක හරහා power ලබා දීලා අපි කලින් සකසපු ටයිමර් දෙකකට අනුව ඒ sound system එක on / off කරන්න. ඒ වගේම දවසට දෙපාරක් ගෙදර වතුර ටැංකියට ස්වයංක්රීයව වතුර ගහන්න වගේ වැඩ වලටත් මේක අරගන්න පුලුවන්.
මේ demo video එක බලලා ඔයාලට මේක වැඩ කරන විදිය ගැන පොඩි අදහසක් ගන්න පුලුවන්.
විශේශම දේ තමයි මේකෙ time, alarm 1 on / off, alarm 2 on / off වලට අදාල වෙලාවන් අපිට වෙනස් කරලා save කරගන්න පුලුවන් push button තුන මගින්.
අනිත් විශේශත්වය තමයි මෙහි auto mode එකෙන් බැහැර වී manual mode එක ක්රියාත්මක කල පසු අපිට අවශ්ය වෙලාවට manually මෙහි තියන relay එක on / off කරන්න පුලුවන්.
මෙහි තිබෙන button පහත ආකාරයට තමයි ක්රියා කරන්නෙ.
ok button click කිරීම -> auto mode සහ manual mode අතර මාරු විය හැකිය. auto mode එක තුල දී කලින් සකස් කල timer වලට අනුව relay එක on / off වේ. manual mode එකේ දී අපගේ අවශ්යතාව මත relay එක manually on හෝ off කරගත හැක. LCD එක මත දැනට මෙය තිබෙන්නෙ auto mode ද manual mode ද යන වග පෙන්වයි.
ok button long press කිරීම -> ok button එක මත තත්පරයක් click කරගෙන අත් හැරි විට පද්දතියේ menu එක බලාගත හැක. මෙහි option 3ක් ඇත.
up සහ down button click කිරීමෙන් මෙමෙ option අතර මාරු විය හැක. ok button එක click කිරීමෙන් අවශ්ය option එක select කරගත හැක.
option 1 - Set Time
මෙමගින් සිදු කරනුයේ මෙහි කාලය මනින RTC (Real Time Clock) එකෙහි වෙලාව සකස් කිරීමයි. මෙහිදී සම්මත වේලාව පැය 24 ඔරලෝසුවට අනුව සකස් කල යුතු වේ.
option 2 - Set Alarm 1
මෙමගින් සකස් කරනුයේ පලමු වන alarm එකට අනුව relay එක on විය යුතු වේලාව සහ off විය යුතු වේලාවයි. මෙම alarm එක ක්රියා විරහිත කිරීමට අවශ්ය් නම් එහි alarm on හෝ alarm off time එකෙහි පැය වලට අදාල අගය උපරිමයට (පැය 24 ට) සකස් කල යුතු වේ.
option 3 - Set Alarm 2
මෙමගින් ඉහත කී ආකාරයටම alarm 2 සදහා වන on / off time සකස් කල හැකි අතර alarm 2 disable කිරීම සදහා එහි on time හෝ off time යන එකක පැය වලට අදාල අගයි උපරිමයට (පැය 24කට) සකස් කල යුතු වේ.
option 1, 2, 3 වලට අදාලව වේලාව වෙනස් කරන විට පැය, මිනිත්තු සහ තත්පර අතර මාරු වීමට ok button එක click කල හැක.
මෙම option වල වේලා වෙනස් කිරීමෙන් පසු save කර menu එකෙන් ඉවත් වී home එකට පැමිනීමට ok button එක මත තත්පර එකක් click කරගෙන සිට අත හැරීම සිදු කල හැක. (ok button long press)
ඉතින් යාලුවනේ ඔය පැහැදිලි කලේ මේ උපකරනය හසුරුවන විදිය.
මේ ගැන තව විශේශ්ම දෙයක් කියන්න තියෙනවා. ඒ තමයි, අපි සකස් කරන timer arduino එකේ EEPROM කියන memory එකේ save වෙනවා. ඒ නිසා power cut කලත් අපේ settings මැකෙන්නේ නැහැ. ඒ වගේම power ගිහින් ආවත් මෙහි relay එක power cut වෙන්න කලින් තිබුන state එකට ස්වයංක්රීයව එනවා. ඒකත් මෙහි වාසියක්.
දැන් අපි බලමු මේ උපකරනය හදන්න අවශ්ය කරන දේවල් මොනවාද කියලා.
Part List
1x Arduino UNO - buy on ebay
1x DS3231 RTC Module - buy on ebay
1x 16x2 Character LCD Module - buy on ebay
1x LCD IIC Driver Module - buy on ebay
1x Relay Module - buy on ebay
3x Push Button - but on ebay
1x Power Connector - buy on ebay
එහෙනම් මේ diagram එකට අනුව උපාංග ටික සම්බන්ද කරගන්න.
Wiring Diagram
දැන් අපි බලමු මේ උපකරනයේ Arduino කෝඩ් එක ගැන.
මේ සදහා අපි arduino කෝඩ් දෙකක් යොදාගන්නවා. පලවෙනි එක තමයි Arduino_Alarm_Clock.ino කියන එක. මේක තමයි අපේ ප්රදානම code එක. නමුත් මුලින්ම මේ කෝඩ් එක arduino එකට දාන්න එපා. හේතුව තමයි අපි මුලින්ම arduino EEPROM එක clear කරගන්න අවශ්යයි. මෙසේ EEPROM එක clear කිරීමට හේතුව තමයි අපි මුල්ම වතාවට අපේ alarm ආඩුයිනෝ එකේ EEPROM එකේ save කරද්දි සහ නැවත code එකට retrieve කරද්දි සිදු වෙන්න පුලුවන් දෝශ නැති කරගැනීම.
ඒකට මුලින්ම පහතින් දක්වා තියන කෝඩ් එක arduino එකට upload කරන්න. එතකොට arduino එකේ EEPROM එකේ තියන registers ඔක්කොම 0 බවට පත් වෙනවා. ඒක කරන්නෙ මේ EEPROM_clear.ino කියන කෝඩ් එකෙන්. මෙතනින් download කරගන්න මේ code එක.
හරි. දැන් කරන්න ඕනෙ මම දීලා තියන library ටික ඔයාගෙ arduino software එක තියන තැන library folder එකට copy paste කරගන්න. අවශ්ය library ටික මෙතනින් download කරගන්න.
දැන තමයි අපේ ප්රදානම code එක Arduino එකට දාන්නෙ. Arduino_Alarm_Clock.ino කෝඩ් එක මෙතනින් download කරගන්න.
ඔයා මේ ටික හරියට කලා නම් මේ වෙනකොටත් LCD එකේ යම් කිසි වේලාවක් පෙන්නන්න ඕනෙ.
LCD එකේ මුකුත්ම පෙන්නන්නෙ නැත්නම් පහතින් තියන දේවල් කරලා බලන්න.
- Wiring Diagram එකත් එක්ක ඔයාගෙ connection ඔක්කොම නිවරදිද කියලා බලන්න.
- LCD IIC Module එකේ contrast preset එක සීරුමාරු කර බලන්න
- මේ සමග දී ඇති iic_scanner.ino කෝඩ් එක aruino එකට upload කර serial monitor එකේ පෙන්වන iic address එක Ardino_Alarm_Clock.ino කෝඩ් එකේ LCD object එක සදහා ආදේශ කර ඇති iic address එක සමග ගැලපේ දැයි බලන්න. එය නොගැලපේ නම් serial monitor එකේ පෙන්වන address එක ආදේශ කර Ardino_Alarm_Clock.ino කෝඩ් එක නැවත upload කර බලන්න.
මේ සදහා අවශ්ය iic_scanner කෝඩ් එක මෙතනින් download කරගන්න.
iic_scanner.ino කෝඩ් එකෙන් සිදු කරනුයේ arduino එකට SCL (A5) සහ SDA (A4) අග්ර හරහා සවි කර ඇති IIC Module වල iic addres serial monitor එකේ පෙන්වීමයි. මෙහිදී අපට අවශ්ය වන්නේ IIC LCD Driver Module එකේ iic address එක දැනගැනීමට නිසා මේ අවස්තාවේ දී DS3231 RTC Module එක arduino එකෙන් විසන්දි කල යුතු ය.
පහතින් තියෙන්නෙ මම හදපු එකේ photos කිහිපයක්.
එහෙනම් ඔයාලට මේ ගැන කියලා දෙන්න ඕනෙ ටික් ඔක්කොම කියලා දුන්නා. අලුත් පෝස්ට් එකකින් නැවතත් හමු වෙමු. යාලුවන්ටත් බලන්න share කරන්න. සුබ දවසක්.
Link open wenne nee
ReplyDeleteDownload link සියල්ලම නැවත සැකසුවා. ස්තුතියි ඔබේ අදහස ට.
Delete