Мазмуну:

5 кг Load Cell жана HX711 Amplifier менен Arduino Scale: 4 кадам (Сүрөттөр менен)
5 кг Load Cell жана HX711 Amplifier менен Arduino Scale: 4 кадам (Сүрөттөр менен)

Video: 5 кг Load Cell жана HX711 Amplifier менен Arduino Scale: 4 кадам (Сүрөттөр менен)

Video: 5 кг Load Cell жана HX711 Amplifier менен Arduino Scale: 4 кадам (Сүрөттөр менен)
Video: Lecture 08: Arduino Conditional Statements | Robojax Arduino Step By Step Course 2024, Июль
Anonim
Arduino Scale 5kg Load Cell жана HX711 Amplifier менен
Arduino Scale 5kg Load Cell жана HX711 Amplifier менен
Arduino Scale 5kg Load Cell жана HX711 Amplifier менен
Arduino Scale 5kg Load Cell жана HX711 Amplifier менен

Бул Нускамада текче бөлүктөрүндө жеткиликтүү болгон кичинекей таразаны кантип жасоо керектиги сүрөттөлөт.

Керектүү материалдар:

1. Arduino - бул дизайн стандарттык Arduino Uno колдонот, башка Arduino версиялары же клондору да иштеши керек

2. HX711 сынык тактасында - Бул микрочип атайын жүктөө клеткаларынан келген сигналдарды күчөтүү жана башка мирконтроллерге билдирүү үчүн жасалган. Жүк клеткалары бул тактага туташат жана бул такта Arduinoго жүктөө клеткалары эмнени өлчөөрүн айтат.

3. 5 кг жүк клеткасы - Жүк клеткалары - атайын формада металл бөлүктөрү. Штаммды өлчөөчү приборлор - бул ийилгенде каршылыгын өзгөртүүчү резисторлор. Металл бөлүгү ийилгенде, жүк клеткасынын каршылыгы өзгөрөт (HX711 каршылыктын бул кичинекей өзгөрүүсүн так өлчөйт). Сиз бул жерден HX711ди жана жүктөө клеткасын сатып алсаңыз болот:

Эгерде сиз комплектти сатып алсаңыз, анда сын -пикир калтырыңыз! Бул чынында эле келечектеги сатып алуучулар үчүн пайдалуу.

4. Бышык жалпак монтаж бети (x2) - катуу жыгачтан же металлдан жасалган кесим идеалдуу.

5. Бардык тетиктерди туташтыруу үчүн ар кандай түстөгү зымдар

6. Arduino үчүн электр менен камсыздоо

1 -кадам: Load Cell орнотуу

Жүк клеткасын орнотуу
Жүк клеткасын орнотуу

Адегенде биз жүктөө клеткасын орнотобуз. Сиздин монтаж уникалдуу болот, бирок бул жерде сиз аткарышыңыз керек болгон көрсөтмөлөр:

1. Алюминий жүк клеткасында 4 тыкылган тешик жана күчтүн багытын көрсөтүүчү энбелги болушу керек. Белгиленбеген жагын белгиленген бетине орнотуп, этикеткасы бар жагын кыймылдуу бетине орнотуңуз. Белгиленген тараптагы жебе жүк колдонулганда платформа жыла турган багытты көрсөтүшү керек.

2. Монтаждоочу табак жана кыймылдуу табак экөө тең мүмкүн болушунча катуу болушу керек

3. Орнотуу плиталары менен жүк клеткасынын ортосуна кандайдыр бир катуу бөлгүчтөрдү койгондугуңузду текшериңиз. Стандарттар же кир жуугучтар экөө тең жакшы иштейт. Максат - жылуучу табакка колдонулган кандайдыр бир күч, жүк клеткасынын ийилишине жана бурулушуна алып келет. Ажыраткычтар жок болсо, жүк жүктөө клеткасына таасир этпестен, кыймылдуу табактан туруктуу плитага өткөрүлүп берилет.

2 -кадам: Load Cells жана HX711 зымдары

Load Cells жана HX711 зымдары
Load Cells жана HX711 зымдары

Жүктөө клеткаларын, HX711 жана Arduino -ны кантип туташтыруу үчүн зым схемасын караңыз.

Алюминий жүк клеткаларында бир нече штамм өлчөгүчтөр Уитстоун көпүрөсүнө бириктирилген. Болгону зымдарды HX711 тактасына туура багытта туташтыруу керек.

3 -кадам: HX711 китепканасын Arduino IDEге кошуңуз

HX711 китепканасы бул жерде жеткиликтүү:

Китепкананы Arduino IDEге кошуу боюнча көрсөтмөлөрдү алуу үчүн Arduino вебсайтындагы бул шилтемени караңыз:

4 -кадам: Калибрлөө жана Таразалоо

Калибрлөө жана Таразалоо!
Калибрлөө жана Таразалоо!

Sparkfun масштабын иштетүү үчүн улуу Arduino программаларына ээ. Эң акыркы версиялар GitHubда жеткиликтүү жана төмөндө кайра басылган:

Биринчи программалык кадам - бул шкаланын калибрлөө факторлорун аныктоо. Бул үчүн, бул кодду иштетиңиз:

/*

Масштабдагы SparkFun HX711 сындыруучу тактасын колдонуу мисалы: By: Nathan Seidle SparkFun Electronics Date: November 19, 2014 Лицензия: Бул код коомдук домен, бирок сиз муну колдонсоңуз, мага пиво сатып берсеңиз жана биз качандыр бир кезде (Beerware лицензиясы) жолугам. Бул калибрлөө эскизи. Аны негизги мисал колдонгон calibration_factor аныктоо үчүн колдонуңуз. Ал ошондой эле кубаттуулук циклдеринин ортосундагы масштабда туруктуу массасы бар долбоорлор үчүн пайдалуу zero_factor чыгарат. Таразаңызды таразага коюп, эскизди шкалада салмагы жок баштаңыз Окуу көрсөткүчтөрү таразага жайгаштырылсын +/- же a/z баскычын чыкылдатуу көрсөткүчтөрү белгилүү салмакка дал келгенге чейин тууралоо үчүн бул калибрлөө_факторун мисал эскизде колдонуңуз Бул мисал фунт (фунт) болжолдойт. Эгерде сиз килограммды кааласаңыз, Serial.print ("lbs") өзгөртүү; кг чейин линия. Калибрлөө коэффициенти кыйла айырмаланат, бирок ал фунтка (1 фунт = 0,453592 кг) байланыштуу болот. Сиздин калибрлөө факторуңуз абдан оң же өтө терс болушу мүмкүн. Баары сиздин масштабдык системаңыздын орнотулушуна жана сенсорлор нөл абалынан бурулушуна көз каранды Бул мисал коду bogde мыкты китепканасын колдонот: "https://github.com/bogde/HX711" богде китепканасы GNU GENERAL PUBLIC LICENSE астында чыгарылган Arduino pin 2 -> HX711 CLK 3 -> DOUT 5V -> VCC GND -> GND Arduino Unoдогу бардык пиндер DOUT/CLK менен шайкеш келет. HX711 тактасы 2.7Vдан 5Vга чейин иштейт, ошондуктан Arduino 5V кубаты жакшы болушу керек. */ #include "HX711.h" #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 HX711 шкаласы; float calibration_factor = -7050; //-7050 менин 440lb макс масштабдуу орнотуумдун жараксыздыгын орнотуу үчүн иштеген () {Serial.begin (9600); Serial.println ("HX711 калибрлөө эскизи"); Serial.println ("Таразадан бардык салмакты алып салуу"); Serial.println ("Окуулар башталгандан кийин белгилүү салмагын масштабга коюңуз"); Serial.println ("Калибрлөө факторун жогорулатуу үчүн + же a басыңыз"); Serial.println ("Калибрлөө коэффициентин азайтуу үчүн - же z баскычын басыңыз"); scale.begin (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 (calibration_factor); // Бул калибрлөө факторуна тууралоо Serial.print ("Окуу:"); Serial.print (scale.get_units (), 1); Serial.print ("lbs"); // Муну кг деп өзгөртүп, эгер сиз акылдуу адам SerI.print ("calibration_factor:") сыяктуу SI бирдиктерин ээрчисеңиз, калибрлөө факторун кайра тууралаңыз. Serial.print (calibration_factor); Serial.println (); if (Serial.available ()) {char temp = Serial.read (); if (temp == ' +' || temp == 'a') calibration_factor += 10; else if (temp == ' -' || temp == 'z') calibration_factor -= 10; }}

Шкаланы калибрлөөдөн кийин, сиз бул үлгү программасын иштете аласыз, андан кийин аны өз максаттарыңыз үчүн бузуп аласыз:

/*

Масштабдагы SparkFun HX711 сындыруучу тактасын колдонуу мисалы: By: Nathan Seidle SparkFun Electronics Date: November 19, 2014 Лицензия: Бул код коомдук домен, бирок сиз муну колдонсоңуз, мага пиво сатып берсеңиз жана биз качандыр бир кезде (Beerware лицензиясы) жолугам. Бул мисал негизги масштабдагы өндүрүштү көрсөтөт. Калибрлөө эскизин караңыз, белгилүү бир жүктөө клеткаңызды орнотуу үчүн calibration_factor. Бул мисал коду bogde мыкты китепканасын колдонот: "https://github.com/bogde/HX711" bogde китепканасы GNU GENERAL PUBLIC LICENSE астында чыгарылган HX711 бир нерсени жакшы аткарат: жүктөө клеткаларын окуу. Үзүлүү тактасы колдонуучуга бир нече граммдан ондогон тоннага чейин бардыгын өлчөөгө мүмкүндүк берүүчү буудай-таш көпүрө негизделген жүк клеткасы менен шайкеш келет. Arduino pin 2 -> HX711 CLK 3 -> DAT 5V -> VCC GND -> GND HX711 тактасы 2.7Vдан 5Vга чейин иштейт, ошондуктан Arduino 5V кубаты жакшы болушу керек. */#include "HX711.h" #define calibration_factor -7050.0 // Бул маани SparkFun_HX711_Calibration эскизинин жардамы менен алынат #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 HX711 шкаласы; void setup () {Serial.begin (9600); Serial.println ("HX711 масштабдуу демо"); scale.begin (LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); scale.set_scale (calibration_factor); // Бул маани SparkFun_HX711_Calibration эскиз масштабын колдонуу менен алынат.tare (); // Баштоодо шкала боюнча эч кандай салмак жок деп ойлосоңуз, масштабды 0 Serial.println ("Окуулар:") деп баштапкы абалга келтириңиз; } void loop () {Serial.print ("Reading:"); Serial.print (scale.get_units (), 1); //scale.get_units () float Serial.print ("lbs") кайтарат; // Сиз муну кгге өзгөртө аласыз, бирок calibration_factor Serial.println (); }

Сунушталууда: