Სარჩევი:

ხელის გარეშე ჟეტონები: 15 ნაბიჯი (სურათებით)
ხელის გარეშე ჟეტონები: 15 ნაბიჯი (სურათებით)

ვიდეო: ხელის გარეშე ჟეტონები: 15 ნაბიჯი (სურათებით)

ვიდეო: ხელის გარეშე ჟეტონები: 15 ნაბიჯი (სურათებით)
ვიდეო: კახი კალაძე დატროლეს 😀🤣🤣 2024, ივლისი
Anonim
ხელის თავისუფალი ჟეტონები
ხელის თავისუფალი ჟეტონები

ჰეი გიკები, ახლა მე ვსწავლობ +2– ში, რაც მე –12 კლასის ტოლფასია. მე ძალიან დაინტერესებული ვარ კომპიუტერული მეცნიერებებით და ასევე ჩემი მთავარი საგანია ეს. ბევრი დრო გავატარე Embedded პროექტების შემუშავებაში. მე მაქვს დაახლოებით 3 წლიანი გამოცდილება ჩაშენებულ სფეროში. მე ყოველთვის ვამახვილებ ყურადღებას ინოვაციურ და მრავალფეროვან გადაწყვეტილებებზე. მშობლებმა დიდი მხარდაჭერა მომცეს ამ პროექტის განხორციელებაში.

კონკურსის მთავარი თემაა ხელით თავისუფალი გადაწყვეტილებების შექმნა.

აქ მე ვქმნი მოწყობილობას სახელწოდებით QMN (Queue Management Node), რომელსაც შეუძლია შექმნას ვირტუალური ნიშანი და ამით მას შეუძლია შეინარჩუნოს ვირტუალური რიგი.

რიგის რიგებში, ჩვენ უნდა მივიღოთ მრიცხველის ფიზიკური ნიშნები, რომლებიც ალბათ საფრთხეში შეგიყვანთ. ამ ვირტუალური ნიშნების გამოყენებით შეგიძლიათ თავიდან აიცილოთ ეს საფრთხე. თქვენ ნამდვილად იღებთ ვირტუალურ ნიშნებს თქვენს სმარტფონზე. ნიშანი არის სრულიად ხელის გარეშე.

ეს არის მარტივი მოსახერხებელი ვირტუალური რიგის შემქმნელი, რომელსაც ეხმარება Arduino MKR WiFI 1010.

ნაბიჯი 1: დემო ვიდეო

Image
Image

უყურეთ დემო ვიდეოს, რომ იცოდეთ ამის შესახებ.

ნაბიჯი 2: ის, რაც ჩვენ გვჭირდება

აპარატურის კომპონენტები

  • Arduino MKR WiFi 1010 x 1
  • დააჭირეთ ღილაკს მოდული x 1
  • TM1637 4 ბიტიანი ციფრული მილის LED ჩვენების მოდული x 1
  • მხტუნავები x 1

პროგრამული უზრუნველყოფის კომპონენტები

  • Arduino IDE
  • Twilio SMS API
  • ThingSpeak API

ინსტრუმენტები

  • მავთულის გამხსნელი და საჭრელი x 1
  • შედუღების რკინა x 1
  • Solder x 1

ნაბიჯი 3: როგორ მუშაობს?

Მომხმარებლის ინტერფეისი
Მომხმარებლის ინტერფეისი

Queue Management Node (QMN) არის მოწყობილობა, რომელიც ქმნის ჭკვიან ნიშანს. ჭკვიანი ნიშნების შესაქმნელად, ადამიანი უნდა იყოს Arduino MKR 1010 -ის wifi დიაპაზონში. ამ პროცესის დასასრულებლად ადამიანს ასევე სჭირდება სმარტფონი. სამუშაო პროცესი შემდეგნაირად წავა…

  • WI-FI წვდომის წერტილი შეიქმნება Arduino MKR 1010-ის მიერ.
  • პირს, რომელსაც სურს ნიშანი, უნდა დაუკავშიროს ტელეფონი წვდომის წერტილს და ის გადამისამართდება ლოკალჰოსტზე.
  • იმ გვერდზე, პირმა უნდა შეიყვანოს თავისი ტელეფონის ნომერი. იმ მომენტში, OTP გაიგზავნება შესაბამის ნომერზე, რომ გადაამოწმოს. ტელეფონის ნომერი შეგნებულად არის მიღებული შეტყობინების გასაცემად.
  • ტელეფონის ნომრის გადამოწმების შემდეგ, ნიშანი გამოჩნდება ლოკალურ ჰოსტზე.
  • როდესაც მისი რიგი მოვა, მოწყობილობა (QMN) გაუგზავნის შეტყობინებას შეტყობინებას დაინტერესებულ პირს, რომ მიიღოს თავისი რიგი.

ეს მოწყობილობა რეალურად იღებს ხალხის მოთხოვნას და აძლევს მათ ჭკვიან ნიშანს. შეტყობინების გაგზავნისთვის ჩვენ ვიყენებთ Twilio SMS API- ს QMN მოწყობილობაში. Turn- ის შეტყობინების გაგზავნა შესაძლებელია QMN ღილაკზე დაჭერით.

როდესაც ყველა ნიშანი გამოძახებულია, შეგიძლიათ მეხსიერების გასუფთავება Arduino MKR WiFi 1010 – ზე გადატვირთვის ღილაკზე დაჭერით.

ნაბიჯი 4: მომხმარებლის ინტერფეისი

Მომხმარებლის ინტერფეისი
Მომხმარებლის ინტერფეისი
Მომხმარებლის ინტერფეისი
Მომხმარებლის ინტერფეისი

*) როდესაც წვდომის წერტილს დაუკავშირდებით, თქვენ გადახვალთ გვერდზე, როგორც პირველი.

*) ტელეფონის ნომრის წარდგენის შემდეგ თქვენ მიიღებთ OTP ამ ნომერს. შემდეგ ის აჩვენებს OTP გვერდს თქვენი OTP ნომრის ჩასაწერად.

*) როდესაც თქვენ წარადგენთ სწორ OTP– ს, თქვენ მიიღებთ ნიშანს ამ ნიშნის გვერდზე.

*) თუ თქვენ შეიყვანეთ არასწორი OTP, ის გამოჩნდება არასწორი OTP.

*) თუ თქვენმა ნომერმა უკვე მიიღო ნიშანი, ის გეტყვით, რომ თქვენ უკვე დარეგისტრირებული ხართ.

ეს ყველაფერი მომხმარებლის ინტერფეისის შესახებ.

მე არ ვიცი ბევრი HTML. მამაჩემმა ეს გვერდები უფრო მიმზიდველი გახადა CSS– ის გამოყენებით.

ნაბიჯი 5: გამოიყენეთ შემთხვევები და უპირატესობები

ის შეიძლება გამოყენებულ იქნას სადმე, როგორიცაა საავადმყოფოები, მაღაზიები და სასტუმროები.

უპირატესობები

  • ჟეტონების მისაღებად არ არის საჭირო ინტერნეტ კავშირი
  • მარტივი მოსახერხებელი ვებ ინტერფეისი.
  • მშობლიური მოწყობილობის შეტყობინება, როდესაც რიგი მოდის.
  • არანაირი ფიზიკური ნიშანი.
  • ადვილად განსახორციელებელი.
  • არ არის ზედმეტი ლოდინის დრო, გამოჩნდით როდესაც თქვენი ჯერი დადგება.

ნაბიჯი 6: Arduino MKR WiFi 1010

Arduino MKR WiFi 1010
Arduino MKR WiFi 1010
Arduino MKR WiFi 1010
Arduino MKR WiFi 1010

მოწყობილობის ტვინი არის Arduino MKR WiFi 1010. ეს არის უმარტივესი წერტილი IoT და პიკო ქსელის პროგრამის დიზაინში შესასვლელად. დაფის მთავარი პროცესორი არის დაბალი სიმძლავრის Arm® Cortex®-M0 32 ბიტიანი SAMD21, ისევე როგორც სხვა დაფები Arduino MKR ოჯახში. WiFi და Bluetooth® კავშირი ხორციელდება u-blox– ის მოდულით, NINA-W10.

ეს მოწყობილობა მთლიანად ეყრდნობა Arduino MKR WiFi 1010 -ის WiFi კავშირს. მოწყობილობა იყენებს wifi მოდულის AP (Acces Point) და STA (Station) რეჟიმს. მოწყობილობა ინტელექტუალურად გადადის ამ რეჟიმებს შორის ამ მოწყობილობის გამართული მუშაობისთვის.

ნაბიჯი 7: Arduino IDE

Arduino IDE
Arduino IDE

Arduino IDE გამოიყენება აქ Arduino MKR WiFI 1010 პროგრამირებისთვის. გთხოვთ, გადახედოთ აქ მოწყობილობის დასაწყებად. გამოიყენეთ უახლესი Arduino IDE Arduino MKR wifi 1010 პროგრამირებისათვის. პროგრამირების დაწყებამდე შეამოწმეთ არის თუ არა მოწყობილობის უახლესი firmware განახლება. გთხოვთ გადახედოთ აქ, რომ იცოდეთ როგორ განაახლოთ firmware.

ნაბიჯი 8: ტყვეობის პორტალი

ჩვენ რეალურად ვქმნით წვდომის წერტილს (AP) Arduino MKR WiFI 1010– ით, ნებისმიერი მოწყობილობა (მობილური) შეიძლება იყოს დაკავშირებული ამ AP– თან. წარსულში ვებ ინტერფეისში შესასვლელად, პირს უნდა ჩაწეროს IP მისამართი ან მასპინძლის სახელი ბრაუზერში. ეს თითქმის ნორმალურია, მაგრამ მომხმარებელს სჭირდება ბრაუზერში ხელით განათავსოს IP ან მასპინძლის სახელი. ეს მართლაც უცნაური რამაა. მაგრამ ამ შემთხვევაში, მოწყობილობა, რომელიც აკავშირებს QMN– ს, ავტომატურად გადამისამართდება ვებ ინტერფეისზე ტყვე პორტალის საშუალებით. აქ ტყვე პორტალი დიდ როლს ასრულებს მომხმარებლის ძალისხმევის შემცირებაში. არსებობს ბევრი დატყვევებული პორტალის პროექტი Espressif მოწყობილობებით, სამწუხაროდ NINA ბიბლიოთეკასთან არ არსებობს. რადგან MKR WiFi 1010 იყენებს NINA ბიბლიოთეკას. ბოლოს, მე აღმოვაჩინე პროექტი არდუინოს ცენტრში, რომელიც იყენებს ტყვე პორტალს, როგორც JayV– ის მთავარ ნივთებს. თითქმის მშვენივრად მუშაობს.

რასაც ჩვენ რეალურად ვაკეთებთ არის ის, რომ ჩვენ ვაყენებთ DNS- ს და ფლობთ წვდომის წერტილს (AP) - IP მისამართს და ვამოწმებთ პირველ (16) DNS მოთხოვნას UDP პორტი 53. პირველი 16 მოთხოვნის შემოწმების შემდეგ ჩვენ გამოგიგზავნით პასუხს DNS მოთხოვნებზე საკუთარი წვდომის წერტილის გადამისამართებული IP მისამართით. შემდეგ ტელეფონი ავტომატურად იტვირთება ვებ ინტერფეისი ვებ ბრაუზერების საშუალებით. საბოლოო ეფექტი იქნება ასეთი, როდესაც მოწყობილობა დაკავშირებულია მითითებულ AP- თან, ტელეფონი ავტომატურად იტვირთება ვებ ინტერფეისი. UDP სერვერი და ვებ სერვერი მუშაობს ორივე ერთდროულად. ვებ სერვერი არის მარტივი მთავარი გვერდი, რომელსაც აქვს ტელეფონის ღილაკი ტელეფონის ნომრის შესაყვანად.

ნაბიჯი 9: Twilio & Things Speak

Twilio & Things Speak
Twilio & Things Speak
Twilio & Things Speak
Twilio & Things Speak

სამწუხაროდ, მე არ მაქვს GSM მოდული შეტყობინებების გასაგზავნად. OTP და მოწყობილობის შეტყობინების გაგზავნისთვის ჩვენ უნდა გამოვიყენოთ ნებისმიერი SMS API. ამ პროექტში, მე გამოვიყენე Twilio– ს SMS API დავალების შესასრულებლად. როგორც ვიცით, რომ API– ს მუშაობისთვის ჩვენ გვჭირდება HTTP მოთხოვნა სერვერზე. პირველ რიგში მე მივეცი ნორმალური HTTP მოთხოვნა Twilio– ს დაშიფვრის გარეშე, მაგრამ Twilio– მ არ გაითვალისწინა ჩემი მოთხოვნა. მათ სჭირდებათ SSL თითის ანაბეჭდები უსაფრთხოების უზრუნველსაყოფად. მე ვერ ვნახე რაიმე ფუნქცია NINA ბიბლიოთეკაში, რომელიც მხარს უჭერს ამ SSL– ს. ამიტომ Thingsspeak გამოვიყენე Twilio– ს გასააქტიურებლად. ამ სერვისების გამოყენებისთვის თქვენ უნდა დარეგისტრირდეთ ორივე პლატფორმაზე.

Twilio– ში შექმენით ახალი ნომერი და ეს იქნება ნომერი, რომელშიც თქვენ გაგზავნეთ მონაცემები. თქვენ მიიღებთ უფასო კრედიტს Twilio– ში შეტყობინებების გაგზავნისთვის. საცდელი ანგარიშისათვის, თქვენ უნდა გადაამოწმოთ ნომრები, რომლებშიც გსურთ მონაცემების გაგზავნა.

გადადით Thingspeak.com– ზე, დააწკაპუნეთ აპებზე, შემდეგ ThingHTTP და შემდეგ New ThingHTTP. ეს გადაგიყვანთ დაყენების გვერდზე. თქვენ მოგიწევთ იპოვოთ თქვენი Twilio ანგარიშის SID და author ნიშანი თქვენს Twilio დაფის გვერდზე.

  • დაარქვით მას Twilio SMS- ის გაგზავნა
  • URL არის https://api.twilio.com/2010-04-01/Accounts/YYUR TWILIO ACCOUNT SID/SMS/Messages
  • HTTP Auth მომხმარებლის სახელი არის თქვენი TWILIO ACCOUNT SID
  • HTTP ავტორის პაროლი არის თქვენი TWILIO AUTH TOKEN
  • დააყენეთ მეთოდი POST
  • შინაარსის ტიპი არის აპლიკაცია/x-www-form-urlencoded
  • დააწკაპუნეთ სათაურების ამოღებაზე და დატოვეთ მასპინძელი ცარიელი
  • სხეული = თქვენი = TWILIO NUMBER & დან = %% ნომერი %% & Body = %% შეტყობინება %%

დააჭირეთ Save ThingHTTP- ს. ThingHTTp– ის API გასაღები უნდა შედიოდეს Arduino Sketch– ში.

ნაბიჯი 10: AP ან STA რეჟიმი

Arduino– ს ყველა დაფა, რომელსაც აქვს ნინას მოდული, ასრულებს ერთ როლს ერთდროულად, ანუ სადგურის რეჟიმში ან წვდომის წერტილის რეჟიმში. ჩვენ მუდმივად უნდა გადავიდეთ ამ რეჟიმებს შორის სამუშაოს შესასრულებლად. პირველ რიგში, QMN იქნება AP რეჟიმში, ნომრის მიღების შემდეგ ის გადავა STA რეჟიმში OTP– ის გასაგზავნად. OTP– ის გაგზავნის შემდეგ QMN გადადის AP რეჟიმში. თუ ადამიანმა ჩართო ღილაკი, QMN გადადის STA რეჟიმში SMS შეტყობინების გაგზავნისთვის. ამის შემდეგ, ის დაბრუნდება AP რეჟიმში. ინტერნეტ კავშირის უზრუნველსაყოფად ჩვენ ვცვლით QMN- ს STA რეჟიმში. SMS API მოითხოვს ინტერნეტ კავშირს.

ნაბიჯი 11: TM1637 4 ბიტიანი ციფრული მილის LED ჩვენება და ღილაკი

TM1637 4 ბიტიანი ციფრული მილის LED ჩვენება და ღილაკი
TM1637 4 ბიტიანი ციფრული მილის LED ჩვენება და ღილაკი
TM1637 4 ბიტიანი ციფრული მილის LED ჩვენება და ღილაკი
TM1637 4 ბიტიანი ციფრული მილის LED ჩვენება და ღილაკი

TM1637 4 ბიტიანი ციფრული მილის LED ჩვენების მოდული არის ხელმისაწვდომი გადაწყვეტა თქვენი ჩამონტაჟებული პროექტის გამომავალი მონაცემების ჩვენებისათვის. მიუხედავად იმისა, რომ ნაჩვენები მონაცემები შეზღუდულია რიცხვებით, ის მაინც აძლევს მომხმარებლებს საშუალებას აჩვენონ ზოგიერთი სიმბოლო, ისევე როგორც A, B, C და ა.შ. ამ 7 სეგმენტის LED Dsiplay– ს აქვს 4 ციფრი, რომელსაც აკონტროლებს TM1637 Driver Chip. მას სჭირდება მხოლოდ ორი კავშირი ამ TM1637 4 ბიტიანი ციფრული მილის LED ჩვენების მოდულის გასაკონტროლებლად. ამ ჩვენების დათვალიერებით ნებისმიერს შეუძლია ადვილად გაიგოს ჟეტონის ნომერი. ეს არის ამ მოწყობილობის რეალური გამოყენება.

ამ მოდულთან მუშაობისთვის გჭირდებათ ბიბლიოთეკა სახელწოდებით TM1637Display.h. უბრალოდ გადმოწერეთ ბიბლიოთეკა აქედან.

აქ ბიძგი გამოიყენება ჟეტონების გამოძახებისთვის. მე გამოვიყენე ღილაკის მოდული, ასე რომ მისი ინტეგრაცია ძალიან ადვილია. აქ დააჭირეთ ღილაკს ჩამოსაშლელ რეჟიმში. თქვენ ასევე შეგიძლიათ მარტივად გააკეთოთ მოდული რეზისტორთან და ღილაკზე დაჭერით.

ნაბიჯი 12: წრე

წრე
წრე
წრე
წრე

წრე ძალიან მარტივია, ის არ შედგება რაიმე რთული ტექნიკისგან. უბრალოდ დააკავშირეთ სქემის მიხედვით. ჯერ ჩავრთე წრე პურის დაფაზე. შემდეგ მხტუნავებთან ერთად შევედი.

ნაბიჯი 13: საქმე

საქმე
საქმე
საქმე
საქმე
საქმე
საქმე

ეს საქმე მივიღე ადგილობრივი მაღაზიიდან. მე უბრალოდ დავჭრა პატარა ნაჭერი წინ, რათა აჩვენო შვიდი სეგმენტი, რომელიც იყო ნიშნის საჩვენებლად. მე ასევე ორ ნაწილად მაქვს მოწყვეტილი გვერდიდან, ერთი არის ღილაკისთვის და მეორე USB კაბელისთვის. კვანძისათვის ძალაუფლების მისაცემად. ეს საქმე ძალიან შესაფერისია, ყველა კომპონენტი მოთავსებულია ძალიან კარგად.

ნაბიჯი 14: არდუინოს ესკიზი

ინტერფეისში ნაჩვენები ყველა HTML გვერდი ინახება Arduino MKR WiFi 1010 -ის ფლეშ მეხსიერებაში. ამის შესანახად გამოვიყენე PROGMEM პროგრამა.

PROGMEM არის pgmspace.h ბიბლიოთეკის ნაწილი. ის ავტომატურად შედის IDE– ს თანამედროვე ვერსიებში. ამასთან, თუ თქვენ იყენებთ IDE ვერსიას 1.0 – ზე ქვემოთ (2011), თქვენ ჯერ უნდა შეიტანოთ ბიბლიოთეკა თქვენი ესკიზის ზედა ნაწილში, მაგალითად:

#ჩართეთ

მიუხედავად იმისა, რომ PROGMEM შეიძლება გამოყენებულ იქნას ერთ ცვლადზე, ნამდვილად ღირს აურზაური, თუ თქვენ გაქვთ მონაცემთა უფრო დიდი ბლოკი, რომელიც უნდა იყოს შენახული, რაც ჩვეულებრივ ყველაზე ადვილია მასივში. ჩვენ გვაქვს მონაცემთა დიდი ბლოკი, ამიტომ ჩვენ ვაპირებთ ამას.

ყველა HTML ფაილი ინახება "source.h" ჩანართში. ამ პროექტის მთელი კოდი შეგიძლიათ იხილოთ აქ. უბრალოდ ატვირთეთ ეს კოდი Arduino მოწყობილობაში.

ნაბიჯი 15: QMN

QMN
QMN

მოწყობილობის საბოლოო ხედვა. მოწყობილობა მზადაა გამოსაყენებლად. უბრალოდ ჩართეთ იგი USB კაბელით და ისიამოვნეთ!

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

მეორე ადგილი "შეხება არ შეუძლია" საოჯახო კონკურსში

გირჩევთ: