Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Aanraakknoppen op Elk Oppervlak Maken met de MPR121 Capacitieve Sensor

Onderdelen en Benodigdheden

Arduino UNO × 1
Adafruit Capacitieve Aanraaksensor Breakout - MPR121 × 1
LED (standaard) × 1

Apps en Onlinediensten

  • Arduino IDE

Over dit project

De MPR121 is een 12-kanaals aanraaksensor die gebruikmaakt van de capacitatieve eigenschappen van de chip. Er zijn twee bibliotheken beschikbaar; de auteur geeft de voorkeur aan de Bare Conductive bibliotheek: GitHub.

Belangrijke kenmerken

  • Trigger-pin: Geeft aan wanneer een van de 12 pinnen wordt aangeraakt of losgelaten, voor snelle reactietijd en interrupt-gebruik in plaats van polling in de loop. Let op: er is maar één trigger-pin voor alle 12 I/O-pinnen.
  • I2C-adres instellen: De ADDR-pin selecteert het I2C-adres. Standaard naar GND getrokken (100kΩ) voor adres 0x5A. Alternatieven: 3V3 (0x5B), SDA (0x5C), SCL (0x5D). Geldt voor Adafruit-boards; klone kunnen verschillen. Gebruik een I2C-scanner bij onzekerheid.

Aansluiting

De aansluiting is eenvoudig (zie schema). Let op: de meeste breakout-boards werken op 3.3V – niet met 5V voeden. De I2C-dataniveaus van 5V van de Arduino zijn meestal geen probleem door de open-collector aard van I2C, maar bij communicatieproblemen kan een logische-niveau-converter helpen.

Toepassingen

De auteur maakte er onder andere een leerspel voor kinderen van: letters verbonden met twee MPR121-chips, elke aanraak speelt een MP3-opname van de letternaf. Ook geëxperimenteerd met Bare Conductive verf – werkt uitstekend met de MPR121.

Codevoorbeeld: Simpele LED aan/uit op pin 0/1

Dit voorbeeld toont hoe een LED op pin 3 aan te zetten met aanraak op elektrode 0 en uit te zetten met loslaten van elektrode 1.

#include <MPR121.h>
#include <Wire.h>

#define numElectrodes 2
#define LEDPIN 3

void setup() {
  Serial.begin(115200);
  Serial.println("System started");
  pinMode(LEDPIN, OUTPUT);
  Wire.begin();
  
  // 0x5A is standaard I2C-adres op Bare Touch Board
  if (!MPR121.begin(0x5A)) {
    Serial.println("error setting up MPR121");
    switch (MPR121.getError()) {
      case NO_ERROR: Serial.println("no error"); break;
      case ADDRESS_UNKNOWN: Serial.println("incorrect address"); break;
      case READBACK_FAIL: Serial.println("readback failure"); break;
      case OVERCURRENT_FLAG: Serial.println("overcurrent on REXT pin"); break;
      case OUT_OF_RANGE: Serial.println("electrode out of range"); break;
      case NOT_INITED: Serial.println("not initialised"); break;
      default: Serial.println("unknown error"); break;
    }
    while (1);
  }
  
  MPR121.setInterruptPin(4);
  MPR121.setTouchThreshold(40);
  MPR121.setReleaseThreshold(20);
  MPR121.updateTouchData();
}

void loop() {
  if (MPR121.touchStatusChanged()) {
    MPR121.updateTouchData();
    for (int i = 0; i < numElectrodes; i++) {
      if (MPR121.isNewTouch(i)) {
        if (i == 0) digitalWrite(LEDPIN, HIGH);
      } else if (MPR121.isNewRelease(i)) {
        if (i == 1) digitalWrite(LEDPIN, LOW);
      }
    }
  }
}

Schema

Zie de schematica-afbeelding in de originele bron voor de exacte aansluitschema van de MPR121 breakout-board met de Arduino UNO.

Productieproces

  1. Bliksemdetectie met Raspberry Pi en AS3935: Een Praktische Handleiding
  2. Uw Hamster's Dagelijkse Oefening Volgen met een Raspberry Pi Fitness Tracker
  3. Aan de slag met IoT en MQTT: Een code-vrije ESP8266-tutorial
  4. Naadloze Arduino‑Raspberry Pi 2 I2C-integratie voor IoT-sensorprojecten
  5. Van concept tot realiteit: Creatieve ontwerpen omzetten in tastbare producten
  6. De Voordelen van CNC Frees-Draai Bewerking Verkennen
  7. Revolutionaire DNA-gebaseerde opslag maakt alledaagse objecten duurzame data-archieven
  8. Mens-gerichte toeleveringsketen-transformatie: Efficiëntie & veerkracht boosten
  9. Smart Draaibank: Geavanceerde Touchscreen Besturing voor Precisie Bewerking
  10. Lente-actie: expert compressoronderhoud voor piek-efficiëntie
  11. OmniFibers: Slimme stof die ademhaling reguleert voor prestaties en herstel