- தேவையான கூறுகள்:
- எப்படி இது செயல்படுகிறது:
- சுற்று விளக்கம்:
- ராஸ்பெர்ரி பைவில் குறியீட்டை எவ்வாறு இயக்குவது:
- நிரலாக்க விளக்கம்:
ராஸ்பெர்ரி பை என்பது ARM கார்டெக்ஸ் அடிப்படையிலான பிரபலமான மேம்பாட்டு வாரியம் ஆகும், இது மின்னணு பொறியாளர்கள் மற்றும் பொழுதுபோக்கிற்காக வடிவமைக்கப்பட்டுள்ளது. இது ஒரு மிகச் சிறந்த செயலாக்க வேகம் மற்றும் நினைவகத்துடன் குறைந்த சக்தியில் இயங்கும் ஒற்றை பலகை கணினி. ஒரு சாதாரண பிசி போன்ற ஒரு நேரத்தில் வெவ்வேறு செயல்பாடுகளைச் செய்ய ராஸ்பெர்ரி பை பயன்படுத்தப்படலாம், எனவே இது உங்கள் உள்ளங்கையில் மினி கம்ப்யூட்டர் என்று அழைக்கப்படுகிறது.
நாங்கள் தொடர்ச்சியான ராஸ்பெர்ரி பை டுடோரியல்களை உருவாக்கியுள்ளோம், அதில் ராஸ்பெர்ரி பை இன் இடைமுகத்தை அனைத்து அடிப்படை கூறுகளையும் உள்ளடக்கியுள்ளோம், அத்துடன் தொடங்குவதற்கு சில எளிய ராஸ்பெர்ரி பை திட்டங்களும் உள்ளன.
இங்கே நாம் ராஸ்பெர்ரி பை போர்டைப் பயன்படுத்தி ஒரு மின்னணு வாக்குப்பதிவு இயந்திரத்தை உருவாக்கப் போகிறோம். ஒரு எளிய பொத்தானை அழுத்துவதன் மூலம் தேர்தல்களில் வாக்களிக்கப் பயன்படுத்தப்படும் மின்னணு வாக்குப்பதிவு இயந்திரம் (ஈ.வி.எம்) பற்றி நாம் அனைவரும் அறிவோம். ஏ.வி.ஆர் மைக்ரோகண்ட்ரோலருடன் ஈ.வி.எம் மற்றும் ஆர்டுயினோவுடன் ஈ.வி.எம் போன்ற வெவ்வேறு மைக்ரோகண்ட்ரோலர்களைப் பயன்படுத்தி மின்னணு வாக்குப்பதிவு இயந்திரத்தை நாங்கள் ஏற்கனவே உள்ளடக்கியுள்ளோம். வாக்காளர் RFID குறிச்சொல்லால் அங்கீகரிக்கப்பட்ட ஒரு வாக்களிக்கும் இயந்திரத்தையும் நாங்கள் உருவாக்கியுள்ளோம், இதனால் அங்கீகரிக்கப்பட்ட வாக்குகளை மட்டுமே கணக்கிட முடியும்.
எங்கள் முந்தைய வாக்குப்பதிவு இயந்திரத்தின் திட்டங்களுடன் ஒப்பிடுகையில், ராஸ்பெர்ரி பை பயன்படுத்தும் இந்த மின்னணு வாக்குப்பதிவு இயந்திரம் எளிமையானது மற்றும் எளிதானது.
தேவையான கூறுகள்:
- ராஸ்பெர்ரி பை - 1
- 16x2 எல்சிடி - 1
- புஷ் பொத்தான் - 5
- ரொட்டி பலகை - 1
- கம்பிகளை இணைக்கிறது
- 1 கே மின்தடை - 1
- 10 கே மின்தடை - 5
- 10 கே பாட் - 1
- எல்.ஈ.டி - 5
எப்படி இது செயல்படுகிறது:
இந்த திட்டத்தில் நான்கு வேட்பாளர்கள் அல்லது கட்சிகளுக்கு வாக்களிக்க நான்கு பொத்தான்களைப் பயன்படுத்தியுள்ளோம். நாங்கள் வேட்பாளர்களின் எண்ணிக்கையை அதிகரிக்க முடியும், ஆனால் சிறந்த புரிதலுக்காக நாங்கள் இங்கு நான்கு பேரை மட்டுமே பயன்படுத்தினோம். ஒரு வாக்காளர் நான்கு பொத்தான்களில் ஏதேனும் ஒன்றை அழுத்தும்போது, மரியாதைக்குரிய கட்சி அல்லது வேட்பாளருக்கான 'வாக்களிப்பு எண்ணிக்கை' ஒவ்வொரு முறையும் ஒன்று அதிகரிக்கும். அதே நேரத்தில் எல்.ஈ.டி ஒளிரும் மற்றும் பஸர் ஒரு விநாடிக்கு, வாக்கு வழங்கப்பட்டுள்ளது என்பதைக் குறிக்கிறது. வாக்களிப்பு முடிந்ததும், வாக்களிப்பின் முடிவுகளைக் காட்ட, எங்களிடம் “முடிவு” பொத்தான் உள்ளது. இந்த பொத்தானை அழுத்தும்போது, எல்.சி.டி திரை வென்ற கட்சியின் பெயரை இல்லை என்று காட்டுகிறது. ஒவ்வொரு கட்சிக்கும் வழங்கப்பட்ட வாக்குகள்.

சுற்று விளக்கம்:
ராஸ்பெர்ரி பை பயன்படுத்தி இந்த ஈ.வி.எம் இன் சுற்று வரைபடம் கீழே கொடுக்கப்பட்டுள்ளது. ராஸ்பெர்ரி பை பொத்தானைப் படித்தல், வாக்கு எண்ணிக்கையை அதிகரித்தல், முடிவை உருவாக்குதல் மற்றும் எல்.சி.டி.யில் எல்லாவற்றையும் காண்பித்தல் போன்ற முழு செயல்முறையையும் கட்டுப்படுத்துகிறது.

இங்கே நாம் பயன்படுத்தி ராஸ்பெர்ரி பை 3 பலகை திட்டத்தில் அனைத்து இயக்கங்களையும் செய்ய தேர்ந்தெடுப்பதன் மற்றும் ராஸ்பெர்ரி பையின் GPIO ஊசிகளையும் கட்டுப்படுத்தும் wiringPi நூலகம் பயன்படுத்தப்படும். ராஸ்பெர்ரி பை 2 ஐயும் இங்கே பயன்படுத்தலாம். இங்கே நாங்கள் ஐந்து பொத்தான்களைப் பயன்படுத்தினோம், அதில் நான்கு வெவ்வேறு வேட்பாளர்கள் / கட்சிகளுக்கு வாக்களிக்க நான்கு பயன்படுத்தப்பட்டுள்ளன, மேலும் எல்.சி.டி.யில் முடிவைக் காண்பிக்க ஒரு பொத்தான் பயன்படுத்தப்படுகிறது. இந்த ஐந்து பொத்தான்கள் நேரடியாக RPI3 இன் 21 முதல் 25 வரை GPIO ஊசிகளுடன் இணைக்கப்பட்டுள்ளன, ஒவ்வொன்றிற்கும் 10K புல்-அப் மின்தடையுடன் தரையைப் பொறுத்தவரை. 16x2 எல்சிடி ராஸ்பெர்ரி பை உடன் இணைக்கப்பட்டுள்ளது. கட்டுப்பாட்டு முள் RS, RW மற்றும் En ஆகியவை GPIO பின் 11, GND மற்றும் 10 உடன் இணைக்கப்பட்டுள்ளன. மேலும் தரவு முள் D4-D7 RPI இன் 6, 5, 4 மற்றும் 1 GPIO ஊசிகளுடன் இணைக்கப்பட்டுள்ளது. ஒரு பஸர்எந்தவொரு பொத்தானையும் வாக்காளரால் அழுத்தும் போது பீப்பிற்கும் பயன்படுத்தப்படுகிறது. கணினி தயாராக உள்ளது என்பதைக் குறிக்க ஒரு பச்சை எல்.ஈ.டி (டி 5) ஐப் பயன்படுத்தினோம், வாக்காளர் பொத்தானை அழுத்துவதன் மூலம் தங்கள் வாக்குகளை இயந்திரத்தில் சமர்ப்பிக்கலாம். எல்சிடியின் பிரகாசத்தைக் கட்டுப்படுத்த 10 கே பாட் பயன்படுத்தப்படுகிறது.
ராஸ்பெர்ரி பைவில் குறியீட்டை எவ்வாறு இயக்குவது:
1. முதலில், இயல்புநிலை பயனர் பெயருடன் SSH ஐப் பயன்படுத்தி உங்கள் ராஸ்பெர்ரி பைக்கு உள்நுழைக: 'பை' மற்றும் கடவுச்சொல்: 'ராஸ்பெர்ரி'. விண்டோஸ் மூலம் பை உடன் இணைவதற்கு எஸ்எஸ்ஹெச் கிளையன்ட் “புட்டி ஃபார் விண்டோஸ்” ஐப் பயன்படுத்தினோம். நீங்கள் லினக்ஸில் இருந்தால், நீங்கள் நேரடியாக SSH ஐப் பயன்படுத்தி பை உடன் இணைக்க முடியும். 'எஸ்.எஸ்.எச் பயன்படுத்தி ராஸ்பெர்ரி பை உடன் இணைதல்' குறித்து இணையத்தில் நிறைய பயிற்சிகள் உள்ளன, எனவே இங்கே நாம் விவரங்களில் செல்லவில்லை. பை, ஓஎஸ் நிறுவல் (ராஸ்பியன் ஜெஸ்ஸி) மற்றும் அதன் வன்பொருள் மற்றும் மென்பொருள் தேவைகளைப் பற்றி மேலும் அறிய ராஸ்பெர்ரி பை உடன் எவ்வாறு தொடங்குவது என்பதையும் நீங்கள் சரிபார்க்க வேண்டும்.

2. இப்போது voting.c என்ற புதிய கோப்பைத் திறக்க கீழேயுள்ள கட்டளையை இயக்கி, குறியீட்டை (கீழே உள்ள குறியீடு பிரிவில் கொடுக்கப்பட்டுள்ளது) கோப்பில் ஒட்டவும், குறியீட்டை ஒட்ட “shift + insert ” விசையைப் பயன்படுத்தவும்.
sudo nano voting.c


3. குறியீட்டை எழுதிய பிறகு ctrl + x ஐ அழுத்தி , குறியீட்டைச் சேமிக்க y ஐ அழுத்தி enter ஐ அழுத்தவும்.
4. இப்போது கொடுக்கப்பட்ட கட்டளையைப் பயன்படுத்தி குறியீட்டை இயக்கக்கூடியதாக ஆக்குங்கள்:
cc -o voting voting.c -lwiringPi -std = c99
5. இறுதியாக கொடுக்கப்பட்ட கட்டளையைப் பயன்படுத்தி குறியீட்டை இயக்கவும்
sudo./voting

நிரலாக்க விளக்கம்:
குறியீட்டை எழுதவும், ஆர்டுயினோ குறியீட்டுக்கு ஒத்த குறியீட்டு முறையை எழுதவும் பயனர் பழக்கமான சி மொழியைப் பயன்படுத்தினோம். இந்த திட்டத்தை உருவாக்க பைதான் மொழியையும் பயன்படுத்தலாம்.
முதலில் நாம் தலைப்பு கோப்புகளை உள்ளடக்குகிறோம் மற்றும் எல்சிடிக்கான ஊசிகளை வரையறுக்கிறோம்; pi இன் GPIO ஊசிகளைக் கட்டுப்படுத்த wiringPi.h தலைப்பு கோப்பு பயன்படுத்தப்படுகிறது. வாக்களிக்கும் உள்ளீடு மற்றும் எல்.ஈ.டி அறிகுறிகளை எடுக்க சில மாறிகள் மற்றும் ஊசிகளைத் தொடங்கவும்.
#சேர்க்கிறது
அதற்குப் பிறகு, பயன்படுத்தப்பட்ட அனைத்து GPIO இன் வெற்றிட அமைவு () செயல்பாட்டிற்கும் திசையை வழங்கியுள்ளோம்.
void setup () {if (wiringPiSetup () == - 1) printf ("ERROR"); pinMode (led1, OUTPUT); pinMode (led2, OUTPUT); pinMode (led3, OUTPUT); pinMode (led4, OUTPUT); pinMode (led5, OUTPUT); pinMode (buzz, OUTPUT); pinMode (RS, OUTPUT);……………….
குறியீட்டில், அழுத்தப்பட்ட பொத்தானைப் படிக்க டிஜிட்டல் ரீட் செயல்பாட்டை வெற்றிட பிரதான () இல் பயன்படுத்தினோம்.
if (டிஜிட்டல் ரீட் (இன் 1) == 0) {வாட் 1 ++; show (); டிஜிட்டல்ரைட் (led1, HIGH); buzzer (); டிஜிட்டல்ரைட் (led1, LOW); காத்திரு(); }
வெற்றிட காட்சி () செயல்பாடு எல்.சி.டி.யில் வாக்களிக்கும் தகவலை வேட்பாளர் கட்சியின் பெயருடன் காண்பிக்கப் பயன்படுகிறது.
வெற்றிட நிகழ்ச்சி () {setCursor (0,0); அச்சு ("பிஜேபி காங் ஏஏபி எக்ஸ்"); setCursor (1,1); sprintf (வாக்கு, "% d", வாக்கு 1); அச்சு (வாக்கு); setCursor (6,1); sprintf (வாக்கு, "% d", வாக்கு 2);………………..
இந்த திட்டத்தில் பயன்படுத்தப்படும் இன்னும் சில செயல்பாடுகள் இங்கே:
void buzzer () fuction என்பது வாக்களிக்கப்பட்டதற்கான ஒரு அடையாளமாக பஸரை ஒலிக்கப் பயன்படுகிறது. மற்றும் வெற்றிடத்தை காத்திருப்பு () இது நிகழ்ச்சிகள் அமைப்பு வாக்களியுங்கள் தயாராக உள்ளது என்று LED D5 (பச்சை நிற LED வன்பொருள்), ஐந்து fuction போது எல்இடி இயக்கப்படும்.
void buzzer () {DigitalWrite (buzz, HIGH); தாமதம் (1000); டிஜிட்டல்ரைட் (buzz, LOW); wait வெற்றிட காத்திருப்பு () {டிஜிட்டல்ரைட் (led5, LOW); தாமதம் (3000); }
வெற்றிட கோமபரே () செயல்பாடு பயன்படுத்தப்படுகிறது, ஒவ்வொரு வேட்பாளரின் மொத்த வாக்குகளை ஒப்பிட்டு, முடிவைப் பெறுவதற்கும், எல்.சி.டி.யில் முடிவின் நிலையைக் காண்பிப்பதற்கும்.
வெற்றிட ஒப்பீடு () {தெளிவான (); print ("தயவுசெய்து காத்திருங்கள்…."); காத்திரு(); if (வாக்கு 1> வாக்கு 2 && வாக்கு 1> வாக்கு 3 && வாக்கு 1> வாக்கு 4) {டிஜிட்டல்ரைட் (led1, HIGH); for (i = 0; i <2; i ++) {clear (); setCursor (0,0); print ("வாழ்த்துக்கள்……."); setCursor (0,1); அச்சு ("பாஜக தேர்தலில் வென்றது");…………………
கீழே உள்ள முழு குறியீட்டை சரிபார்க்கவும்.
