Arduino_Scuola
Published © GPL3+

A Cool Scale

This tutorial aims to show how to make a cool scale for your bag using a lilypad and cool plug and wear stuff!

BeginnerFull instructions provided30 minutes5,213
A Cool Scale

Things used in this project

Hardware components

Arduino LilyPad USB
Arduino LilyPad USB
×1
10 Red LED 5mm
×1
10 Green LED 5mm
×1
10 10k 1/4w resistor
×1
10 1k 1/4w resistor
×1

Story

Read more

Schematics

750x750_5410205d8a9571_uoDJil0M6q.jpg

Code

Code snippet #1

Arduino
/*
Use your Arduino and your plug and wear accessories as a cool scale!
Working principle:
There are 2 LEDs (Green and Red):
- the LEDs are both OFF with no load conditions;
- the Green LED lights up with a weight between 100g and 2kg;
- the LEDs are both ON with a weight between 2.1kg and 3kg;
- the LEDs are blinking over 3kg

BOM:
Arduino lilypad
Textile Analog Pressure Sensor
Conductive wire
1x 10k resistor
2x 1k resistor
1x Green LED
1x Red LED

Approximated reference table:
0g    -> analogRead = 860
557g  -> analogRead = 630
945g  -> analogRead = 550
2121g -> analogRead = 410
4000g -> analogRead = 250

created by Arturo Guadalupi <a.guadalupi@arduino.cc>
*/
const int no = 850;
const int ok = 530;
const int mmh = 410;
const int argh = 330;
const int sensor = A0;
const int greenLED = 5;
const int redLED = 6;
int analogVal;

void setup() {
  // put your setup code here, to run once:
  pinMode(sensor, INPUT);
  pinMode(greenLED, OUTPUT); //green LED
  pinMode(redLED, OUTPUT); //red LED
}

void loop() {
  // put your main code here, to run repeatedly:
  analogVal = analogRead(A5);

  if (analogVal >= no) //no load
  {
    digitalWrite(greenLED, LOW);
    digitalWrite(redLED, LOW);
  }

  if (analogVal >= ok && analogVal < no) //100g < weight < 2kg;
  {
    digitalWrite(greenLED, HIGH);
    digitalWrite(redLED, LOW);
  }

  if (analogVal >= mmh && analogVal < ok) //2.1kg < weight < 3kg;
  {
    digitalWrite(greenLED, HIGH);
    digitalWrite(redLED, HIGH);
  }

  if (analogVal <= argh) //weight > 3kg;
  {
    digitalWrite(greenLED, HIGH);
    digitalWrite(redLED, HIGH);
    delay(150);
    digitalWrite(greenLED, LOW);
    digitalWrite(redLED, LOW);
    delay(150);
  }

}

Credits

Arduino_Scuola

Arduino_Scuola

32 projects • 155 followers

Comments