COMPARTILHANDO ESQUEMA. LIGAR 4 CÉLULAS DE CARGA (4 FIOS) NO HX 711

OLÁ PESSOAL ABRI UMA BALANÇA E FIZ UM ESQUEMA DE LIGAÇÃO PARA CÉLULAS DE CARGA (4 CÉLULAS DE 4 FIOS), COM CALIBRAÇÃO INDIVIDUAL ( TRIMPOT).

DESCULPEM SE NÃO FICOU MUITO BOM. 

MAS DA PRA ENTENDER!!!

  • para cima

    Marcos F.Mazzuchetti

    13
  • para cima

    Marcos F.Mazzuchetti

    olá bom dia. NA VERDADE USEI BIBLIOTECA SIM. MAS A LIGAÇÃO DE DUAS CELULAS FOI SOZINHO MESMO.

    CAPTURA=CAPTURA1;

         

    //INDICA QUE OS BITS DA VARIAVÉL CAPTURA SERAO DESLOCADO 1 VEZ PARA A ESQUERDA.

    EX.;

    int x = 1; // 0000 0001

    int x0 = (x  0); // 0000 0001 Não deslocado

    int x1 = (x  1); // 0000 0010

    int x2 = (x  2); // 0000 0100

    int x3 = (x  3); // 0000 1000


    E CAPTURA^=0x00800000;
    //xor_eq(^=)

      é um operador de atribuição que executa 

    bit a bit "exclusivo ou"

     . É equivalente a 

    lógica-ou-expr = lógico-ou-expr ^ atribuição-expr

     , exceto que 

    lógico-ou-expr

     é avaliada apenas uma vez.

         OU SEJA ESSE É EXCLUSIVO DO HX 711, ESTA NO DATA SHEET DO HX 711.

    VEJA NESSE SITE FOI ONDE TIREI TUDO.>>>>    http://absolem.com.br/blog/hx711/hx711/#.V7L0JFsrLcs

    DAQUI PUDE ENTENDER MELHOR COMO FUNCIONAVA O HX 711.

    ABRAÇOS

    
    
     
    2
    • para cima

      Marcos Felipe da Costa Fiatkoski

      Boa tarde galera tenho esse código com a biblioteca hx711 que funciona para 1 sensor desses de 3 fios, porém quero utilizar mais 3 sensores com o arduino lendo cada sensor separado.

      #include "HX711.h"
      // HX711.DOUT  - pin 10
      // HX711.PD_SCK - pin 11
      HX711 scale(10, 11); // parameter "gain" is ommited; the default value 128 is used by the  library  library*/
      void setup() 
      {
        Serial.begin(9600);
        Serial.println("HX711 Demo");
        Serial.println("Before setting up the scale:");
        Serial.print("read: \t\t ");
        Serial.println(scale.read());     // print a raw reading from the ADC 
        
        Serial.print("read average:\t\t ");
        Serial.println(scale.read_average(20));       // print the average of 20 readings from the ADC
        
        Serial.print("get value: \t\t ");
        Serial.println(scale.get_value(5));   
      // print the average of 5 readings from the ADC minus the tare weight (not set yet)
       
        Serial.print("get units: \t\t ");
        Serial.println(scale.get_units(5), 1);  
      // print the average of 5 readings from the ADC minus tare weight (not set) divided by the SCALE parameter (not set yet) 
      scale.set_scale(2280.f);  
       // this value is obtained by calibrating the scale with known weights; see the README for details
        scale.tare();   // reset the scale to 0
       
       Serial.println("After setting up the scale:");
       
       Serial.print("read: \t\t");
       Serial.println(scale.read());                        // print a raw reading from the ADC
       
       Serial.print("read average:\t\t ");
       Serial.println(scale.read_average(20));       // print the average of 20 readings from the ADC
       
       Serial.print("get value: \t\t ");    
      // print the average of 5 readings from the ADC minus the tare weight, set with tare()
      Serial.println(scale.get_value(5));
      Serial.print("get units: ");
      Serial.println(scale.get_units(5), 1);      
      // print the average of 5 readings from the ADC minus tare weight, divided by the SCALE parameter set with set_scale
       
      Serial.println("Readings:");
      }
      void loop() 
      {
        Serial.print("Weight :");                        
        /* ---------Weight in terms of KG-------------*/
        Serial.print(scale.get_units()*0.1 , 1);
        Serial.print("KG \t\t\t\t");
        scale.power_down();             // put the ADC in sleep mode
        delay(5000);
        scale.power_up();
      }
      10