|
1. HX711 ¼¾¼ ¼Ò°³
2. ¾Æ
µÎÀ̳ë¿Í °°ÀÌ »ç¿ëÇϱâ
2.1
¼¾¼ ȸ·Îµµ¹× ¿Ü°û Ä¡¼ö
2.2
¾ÆµÎÀ̳ë UNO R3 ¹è¼±µµ
2.3
¾ÆµÎÀÌ³ë ½ºÄÉÄ¡ ÄÚµå
2.4
¾ÆµÎÀÌ³ë ½ºÄÉÄ¡ ÄÚµå ½ÇÇà °á°ú
3
¼¾¼ ¿Ü Á¦Ç° ¼Ò°³
4
¾ÆµÎÀÌ³ë ½ºÄÉÄ¡ ÄÚµå ½ÇÇà µ¿¿µ»ó
HX711 ¼¾¼´Â HX711 IC·Î ÀÌ·ç¾îÁø ¼¾¼ÀÌ¸ç ·Îµå ¼¿À» ÀÌ¿ëÇÏ¿© °£ÆÇÇÏ°Ô ¹«°Ô¸¦
ÃøÁ¤ÇÒ¼öÀÖ°í
¸¶ÀÌÅ©·Î ÄÁÆ®·Ñ·¯¿¡ ¿¬°ÉÇÏ¿©
·Îµå¼¿ÀÇ º¯ÈÇÏ´Â ÀúÇ×°ªÀ» Àоîµé¿© ¹«°Ô¸¦ ÃøÁ¤ÇÕ´Ï´Ù.
¾Æ³¯·Î±×¿Í µðÁöÅÐ ¼ÇöóÀÌ¿¡ ÇÊÅÍ
Ä¿ÆнÃÅ͸¦ ºÐ¸®ÇÏ¿© ¹èÄ¡ÇÏ¿´½À´Ï´Ù.
Åë½Å¹æ½ÄÀº À̼±½ÄÅë½ÅÀ» »ç¿ëÇÕ´Ï´Ù.
(Ŭ·°, µ¥ÀÌÅÍ)
ÀÌ ¼¾¼´Â Àú¿ï, °øÁ¤Á¦¾î, °£´ÜÇÑ
ŽÁöµî ¿©·¯°÷¿¡ ¾²ÀÏ ¼ö ÀÖ½À´Ï´Ù.
Characteristic |
Value |
Unit |
Supply
Voltage |
2.6 ~ 5.5 |
V |
Digital Supply
Current |
100 |
uA |
Analog Supply
Current |
1400 |
uA |
crystal or external colock firequency |
1~
20 |
MHz |
Internal Oscillator, RATE = 0 |
10 |
Hz |
Internal Oscillator, RATE = DVDD |
80 |
Crystal or external clock, RATE=0
|
fclk/1,105,920 |
Crystal or external clock, RATE=DVDD |
fclk/138,240 |
Output data coding |
800000~7FFFFF |
HEX |
Input common mode rejection |
100 |
dB |
Power supply rejection |
100 |
dB |
HX711¼¾¼ ȸ·Îµµ
- HX711
PDF ȸ·Îµµ ´Ù¿î·Îµå
- HX711
µ¥ÀÌÅͽÃÆ® ´Ù¿î·Îµå(http://www.jkelec.co.kr)
- HX711
DXF ijµå ÆÄÀÏ ´Ù¿î·Îµå

HX711 ¼¾¼ ¿Ü°û(mm´ÜÀ§) Ä¡¼ö

|
HX711 ¾ÆµÎÀ̳ë UNO R3 ¹è¼±µµ |
HX711<---> ¾ÆµÎÀ̳ë
5V<--->VCC,VDD
GND<--->GND
A0<--->SCK
A1<--->DOUT
E+<--->»¡°
»ö
E-<--->°ËÁ¤
»ö
A-<--->Èò»ö
A+<--->ÃÊ·Ï
»ö
-
Fritzing ÆÄÀÏ ´Ù¿î·Îµå

|
HX711 ¾ÆµÎÀÌ³ë ½ºÄÉÄ¡ ÄÚµå |
HX711¼¾¼¸¦
ÀÌ¿ëÇÏ¿© ·Îµå ¼¿ÀÇ ÀúÇ×°ªÀ» ÃøÁ¤ÇÏ¿© Á¦·ÎÁ¡Á¶Á¤ÈÄ ±×·¥À¸·Î ½Ã¸®¾ó µ¥ÀÌÅÍ·Î Ãâ·ÂÇÏ´Â
¿¹Á¦ ÀÌ´Ù.
¾ÆµÎÀÌ³ë ½ºÄÉÄ¡ ÄÚµå
- HX711 ¹«°Ô
ÃøÁ¤ µ¥ÀÌÅÍ Ç¥½Ã ½ºÄ³Ä¡ ÆÄÀÏ ´Ù¿î·Îµå
// Hx711.DOUT - pin #A1 // Hx711.SCK - pin #A0
#include "Arduino.h"
class Hx711 { public: Hx711(uint8_t pin_din, uint8_t pin_slk); virtual ~Hx711(); long value(); long nomalvalue(byte times = 32); void setOffset(long offset); void setScale(float scale = 742.f); float gram();
private: const uint8_t DOUT; const uint8_t SCK; long _offset; float _scale; };
Hx711 scale(A1, A0); Hx711::Hx711(uint8_t pin_dout, uint8_t pin_slk) : DOUT(pin_dout), SCK(pin_slk) { pinMode(SCK, OUTPUT); pinMode(DOUT, INPUT);
digitalWrite(SCK, HIGH); delayMicroseconds(100); digitalWrite(SCK, LOW);
nomalvalue(); this->setOffset(nomalvalue()); this->setScale(); }
Hx711::~Hx711() {
}
long Hx711::nomalvalue(byte times) { long sum = 0; for (byte i = 0; i < times; i++) { sum += value(); }
return sum / times; }
long Hx711::value() { byte data[3];
while (digitalRead(DOUT)) ;
for (byte j = 3; j--;) { for (char i = 8; i--;) { digitalWrite(SCK, HIGH); bitWrite(data[j], i, digitalRead(DOUT)); digitalWrite(SCK, LOW); } }
digitalWrite(SCK, HIGH); digitalWrite(SCK, LOW);
data[2] ^= 0x80;
return ((uint32_t) data[2] << 16) | ((uint32_t) data[1] << 8) | (uint32_t) data[0]; }
void Hx711::setOffset(long offset) { _offset = offset; }
void Hx711::setScale(float scale) { _scale = scale; }
float Hx711::gram() { long val = (nomalvalue() - _offset); return (float) val / _scale; }
void setup() {
Serial.begin(9600);
}
void loop() {
Serial.print(scale.gram()*2, 1); Serial.println(" g");
delay(400); }
|
|
HX711 ¾ÆµÎÀÌ³ë ½ºÄÉÄ¡ ÄÚµå ½ÇÇà °á°ú |
½Ã¸®¾ó¸ð´ÏÅÍ

·Îµå¼¿, ·Îµå¼¿ ¹Þħ´ë
(±¸ÀÔó:https://www.toolparts.co.kr)
·Îµå¼¿

·Îµå¼¿ ¹Þħ´ë

|