Სარჩევი:

არდუინოს სასწორი 5 კილოგრამიანი დატვირთვით და HX711 გამაძლიერებელით: 4 ნაბიჯი (სურათებით)
არდუინოს სასწორი 5 კილოგრამიანი დატვირთვით და HX711 გამაძლიერებელით: 4 ნაბიჯი (სურათებით)

ვიდეო: არდუინოს სასწორი 5 კილოგრამიანი დატვირთვით და HX711 გამაძლიერებელით: 4 ნაბიჯი (სურათებით)

ვიდეო: არდუინოს სასწორი 5 კილოგრამიანი დატვირთვით და HX711 გამაძლიერებელით: 4 ნაბიჯი (სურათებით)
ვიდეო: Arduino კოდი VL53L1X ფრენის დრო 400 სმ ლაზერული მანძილის სენსორი 2024, ნოემბერი
Anonim
არდუინოს სასწორი 5 კილოგრამიანი დატვირთვით და HX711 გამაძლიერებელით
არდუინოს სასწორი 5 კილოგრამიანი დატვირთვით და HX711 გამაძლიერებელით
არდუინოს სასწორი 5 კილოგრამიანი დატვირთვით და HX711 გამაძლიერებელით
არდუინოს სასწორი 5 კილოგრამიანი დატვირთვით და HX711 გამაძლიერებელით

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

საჭირო მასალები:

1. Arduino - ეს დიზაინი იყენებს სტანდარტულ Arduino Uno– ს, ასევე უნდა მუშაობდეს Arduino– ს სხვა ვერსიები ან კლონები

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

3. 5 კგ ჩამტვირთავი უჯრედი - ჩამტვირთავი უჯრედები არის ლითონის ნაწილები, რომლებსაც აქვთ წებოვანი გამწოვი. დაძაბულობის საზომი არის რეზისტორები, რომლებიც ცვლის მათ რეზისტენტობას მოხრისას. როდესაც ლითონის ნაწილი იკეცება, დატვირთვის უჯრედის წინააღმდეგობა იცვლება (HX711 ზუსტად ზომავს წინააღმდეგობის ამ მცირე ცვლილებას). თქვენ შეგიძლიათ შეიძინოთ როგორც HX711, ასევე ჩამტვირთავი უჯრედი აქ:

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

4. მყარი ბრტყელი სამონტაჟო ზედაპირი (x2) - ხისტი ან მეტალის ხისტი ნაჭერი იდეალურია.

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

6. არდუინოს ელექტრომომარაგება

ნაბიჯი 1: დაამონტაჟეთ ტვირთის უჯრედი

დაამონტაჟეთ ტვირთის უჯრედი
დაამონტაჟეთ ტვირთის უჯრედი

პირველ რიგში ჩვენ ვაპირებთ დატვირთვა საკანში. თქვენი მთა უნიკალური იქნება, მაგრამ აქ არის მითითებები, რომლებიც უნდა დაიცვას:

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

2. სამონტაჟო ფირფიტა და მოძრავი ფირფიტა ორივე უნდა იყოს რაც შეიძლება ხისტი

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

ნაბიჯი 2: მავთულის ჩამტვირთავი უჯრედები და HX711

მავთულის დატვირთვის უჯრედები და HX711
მავთულის დატვირთვის უჯრედები და HX711

იხილეთ გაყვანილობის დიაგრამა, თუ როგორ დააკავშიროთ დატვირთვის უჯრედები, HX711 და Arduino.

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

ნაბიჯი 3: დაამატეთ HX711 ბიბლიოთეკა თქვენს Arduino IDE- ში

HX711 ბიბლიოთეკა ხელმისაწვდომია აქ:

იხილეთ ბმული Arduino– ს ვებგვერდზე ინსტრუქციისთვის, თუ როგორ უნდა დაამატოთ ბიბლიოთეკა თქვენს Arduino IDE– ში:

ნაბიჯი 4: დაკალიბრება და წონა

დაკალიბრება და წონა!
დაკალიბრება და წონა!

Sparkfun– ს აქვს Arduino– ს შესანიშნავი პროგრამები მასშტაბის გასაშვებად. ყველაზე თანამედროვე ვერსიები ხელმისაწვდომია GitHub– ზე და დაბეჭდილია ქვემოთ:

პირველი პროგრამული ნაბიჯი არის მასშტაბის დაკალიბრების ფაქტორების განსაზღვრა. ამისათვის გაუშვით ეს კოდი:

/*

მაგალითი SparkFun HX711 გამანადგურებელი დაფის გამოყენებით მასშტაბით ავტორი: Nathan Seidle SparkFun Electronics თარიღი: 19 ნოემბერი, 2014 ლიცენზია: ეს კოდი არის საზოგადოებრივი დომენი, მაგრამ თქვენ ყიდულობთ ჩემთვის ლუდს, თუ ამას გამოიყენებთ და ჩვენ ოდესმე შევხვდებით (Beerware ლიცენზია). ეს არის კალიბრაციის ესკიზი. გამოიყენეთ იგი კალიბრაციის_ფაქტორის დასადგენად, რომელსაც იყენებს ძირითადი მაგალითი. ის ასევე გამოაქვს ნულოვანი_ფაქტორი, რომელიც სასარგებლოა იმ პროექტებისთვის, რომლებსაც აქვთ მუდმივი მასა მასშტაბის დენის ციკლებს შორის. დააყენეთ თქვენი მასშტაბი და დაიწყეთ ესკიზი სასწორის წონის გარეშე მას შემდეგ, რაც წაკითხვის ჩვენება მოხდება, განათავსეთ წონა სასწორზე დააჭირეთ +/- ან a/z კალიბრაციის_ფაქტორის შესაცვლელად, სანამ გამომავალი მაჩვენებლები არ ემთხვევა ცნობილ წონას გამოიყენეთ ეს კალიბრაციის_ფაქტორი მაგალითის ესკიზზე ეს მაგალითი გულისხმობს ფუნტს (ფუნტს). თუ გირჩევნიათ კილოგრამები, შეცვალეთ Serial.print ("lbs"); ხაზი კგ -მდე. დაკალიბრების ფაქტორი მნიშვნელოვნად განსხვავებული იქნება, მაგრამ ის წრფივად იქნება დაკავშირებული lbs (1 lbs = 0.453592 კგ). თქვენი დაკალიბრების ფაქტორი შეიძლება იყოს ძალიან დადებითი ან ძალიან უარყოფითი. ეს ყველაფერი დამოკიდებულია თქვენი მასშტაბის სისტემის დაყენებაზე და სენსორების მიმართულებაზე, რომელიც ნულოვანი მდგომარეობიდან გადადის Arduino pin 2 -> HX711 CLK 3 -> DOUT 5V -> VCC GND -> GND Arduino Uno– ს ნებისმიერი პინი უმეტესობა თავსებადია DOUT/CLK– თან. HX711 დაფა შეიძლება იკვებებოდეს 2.7 ვ -დან 5 ვ -მდე, ასე რომ არდუინოს 5 ვ სიმძლავრე კარგად უნდა იყოს. */ #მოიცავს "HX711.h" #განსაზღვრეთ LOADCELL_DOUT_PIN 3 #განსაზღვრეთ LOADCELL_SCK_PIN 2 HX711 მასშტაბი; float calibration_factor = -7050; //-7050 მუშაობდა ჩემს 440lb მაქსიმალური მასშტაბის დაყენებაზე void setup () {Serial.begin (9600); Serial.println ("HX711 დაკალიბრების ესკიზი"); Serial.println ("ყველა წონის ამოღება სასწორიდან"); Serial.println ("წაკითხვის დაწყების შემდეგ, განათავსეთ ცნობილი წონა მასშტაბზე"); Serial.println ("დააჭირეთ + ან a კალიბრაციის ფაქტორის გასაზრდელად"); Serial.println ("დააჭირეთ - ან z კალიბრაციის ფაქტორის შესამცირებლად"); scale. დასაწყისი (LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); scale.set_scale (); scale.tare (); // მასშტაბის გადაყენება 0 ხანგრძლივზე zero_factor = scale.read_average (); // მიიღეთ საბაზისო კითხვა Serial.print ("ნულოვანი ფაქტორი:"); // ეს შეიძლება გამოყენებულ იქნას სასწორის გაფუჭების საჭიროების მოსაშორებლად. სასარგებლოა მუდმივი მასშტაბის პროექტებში. Serial.println (zero_factor); } void loop () {scale.set_scale (დაკალიბრების_ფაქტორი); // მორგება ამ დაკალიბრების ფაქტორზე Serial.print ("კითხვა:"); Serial.print (scale.get_units (), 1); Serial.print ("lbs"); // შეცვალეთ ეს კგ-ზე და ხელახლა დაარეგულირეთ კალიბრაციის ფაქტორი, თუ დაიცავთ SI ერთეულებს ჯანსაღი ადამიანის მსგავსად Serial.print ("calibration_factor:"); Serial.print (დაკალიბრების_ფაქტორი); Serial.println (); if (Serial.available ()) {char temp = Serial.read (); if (temp == ' +' || temp == 'a') დაკალიბრების_ფაქტორი += 10; სხვაგვარად if (temp == ' -' || temp == 'z') calibration_factor -= 10; }}

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

/*

მაგალითი SparkFun HX711 გამანადგურებელი დაფის გამოყენებით მასშტაბით ავტორი: Nathan Seidle SparkFun Electronics თარიღი: 19 ნოემბერი, 2014 ლიცენზია: ეს კოდი არის საზოგადოებრივი დომენი, მაგრამ თქვენ ყიდულობთ ჩემთვის ლუდს, თუ ამას გამოიყენებთ და ჩვენ ოდესმე შევხვდებით (Beerware ლიცენზია). ეს მაგალითი აჩვენებს ძირითადი მასშტაბის გამომუშავებას. იხილეთ კალიბრაციის ესკიზი, რომ მიიღოთ კალიბრაციის_ფაქტორი თქვენი კონკრეტული დატვირთვის უჯრედის დაყენებისათვის. ეს მაგალითი იყენებს ბოჯის ბრწყინვალე ბიბლიოთეკას: "https://github.com/bogde/HX711" ბოგდის ბიბლიოთეკა გამოიცემა GNU GENERAL PUBLIC ლიცენზიის ქვეშ. HX711 აკეთებს ერთ რამეს კარგად: იკითხება დატვირთული უჯრედები. გარღვევის დაფა თავსებადია ხორბლის ქვის ხიდზე დაფუძნებულ დატვირთულ უჯრედთან, რაც მომხმარებელს საშუალებას მისცემს შეაფასოს ყველაფერი რამდენიმე გრამიდან ათეულ ტონამდე. Arduino pin 2 -> HX711 CLK 3 -> DAT 5V -> VCC GND -> GND HX711 დაფა შეიძლება იკვებებოდეს 2.7V– დან 5V– მდე, ასე რომ Arduino 5V– ის სიმძლავრე უნდა იყოს კარგი. */ #მოიცავს "HX711.h" #განსაზღვრეთ კალიბრაციის_ფაქტორი -7050.0 // ეს მნიშვნელობა მიიღება SparkFun_HX711_Calibration ესკიზის გამოყენებით #განსაზღვრეთ LOADCELL_DOUT_PIN 3 #განსაზღვრეთ LOADCELL_SCK_PIN 2 HX711 მასშტაბი; void setup () {Serial.begin (9600); Serial.println ("HX711 მასშტაბის დემო"); scale. დასაწყისი (LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); scale.set_scale (დაკალიბრების_ფაქტორი); // ეს მნიშვნელობა მიიღება SparkFun_HX711_Calibration sketch scale.tare () გამოყენებით; // თუ ვივარაუდებთ, რომ სასწორი არ არის წონაში გაშვებისას, გადააყენეთ მასშტაბი 0 Serial.println ("საკითხავი:"); } void loop () {Serial.print ("კითხულობს:"); Serial.print (scale.get_units (), 1); //scale.get_units () აბრუნებს float Serial.print ("lbs"); // თქვენ შეგიძლიათ შეცვალოთ იგი კგ -ზე, მაგრამ დაგჭირდებათ კალიბრაციის_ფაქტორის რეფაქტორი Serial.println (); }

გირჩევთ: