Stații de lucru
OS - Windows 9049 Solutii
Reguli si plangeri 11 Solutii
OS - OS X 410 Solutii
Reguli de configurare 12 Solutii
Licentiere 18 Solutii
Securitate 182 Solutii
Copie de rezerva (Backup) 68 Solutii
Antivirus 72 Solutii
Aplicatii specifice 5217 Solutii
Hardware 291 Solutii
Stop downloading GitHub binaries manually
[mai mult...]Artefacte grafice (ale texturilor) in aplicatii 2D sau 3D pe terminale iOS/Android (ARM)
Daca se respecta anumite “conditii”, desi dispozitivul este sau a fost perfect functional fara a avea disfunctionalitati de natura hardware, putem observa ca in anumite aplicatii si/sau motoare grafice texturile/imaginile/loading bars fie sunt albe sau incarca lent, fie prezinta tipare de culori la intamplare.
Desigur, sunt posibile si alte simptome dar cele de mai sus au fost observate si remediate cu metoda prezentata in continuare.
[mai mult...]Imposibilitate finalizare instalare sistem de operare (x64) prin retea (RJ-45)
Daca anumite dispozitive nu pot finaliza instalarea sistemului de operare conectate la un cablu ethernet folosind network boot desi utilizarea “aceluiasi post de lucru” nu prezinta probleme pe alte device-uri (inclusiv noi), mai exista o ultima solutie inaintea necesitatii inlocuirii de componente sau trimiterea in garantie.
[mai mult...]Arduino Fingerprint Sensor
Required Components
| Component | Quantity | Description |
|---|---|---|
| Arduino Uno / Nano / Mega | 1 | Main controller |
| Fingerprint Sensor (R307 / ZFM-20 / Adafruit) | 1 | Biometric identification |
| 16×2 LCD with I2C Module | 1 | Display user messages |
| 12V Solenoid Lock | 1 | Door/box locking mechanism |
| 5V Relay Module | 1 | Controls solenoid lock |
| 12V Power Supply | 1 | Powers solenoid |
| Jumper Wires | – | Connections |
The fingerprint sensor scans the user’s finger. Arduino checks if the fingerprint matches a stored ID. If it matches, the relay is activated and unlocks the solenoid lock. The LCD shows:
- Scanning
- Access Granted
- Access Denied
Fingerprint Sensor → Arduino
VCC → 5V GND → GND TX → D2 RX → D3
I2C LCD → Arduino
VCC → 5V GND → GND SDA → A4 SCL → A5
Relay Module → Arduino
IN → D8 VCC → 5V GND → GND
Solenoid Lock Power Wiring
12V+ → COM on Relay NO → Solenoid + Solenoid - → 12V -
IMPORTANT: Use a diode (1N4007) across solenoid terminals to prevent voltage spikes.
Arduino Code (Copy & Paste)
This code controls the fingerprint module, LCD display, and solenoid lock.
#include <Adafruit_Fingerprint.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <SoftwareSerial.h>
SoftwareSerial fingerSerial(2, 3); // RX, TX
Adafruit_Fingerprint finger = Adafruit_Fingerprint(&fingerSerial);
LiquidCrystal_I2C lcd(0x27, 16, 2);
int relayPin = 8;
void setup() {
lcd.init();
lcd.backlight();
pinMode(relayPin, OUTPUT);
digitalWrite(relayPin, LOW); // lock OFF at start
lcd.setCursor(0, 0);
lcd.print("Fingerprint");
lcd.setCursor(0, 1);
lcd.print("Access System");
delay(2000);
lcd.clear();
finger.begin(57600);
if (finger.verifyPassword()) {
lcd.print("Sensor Ready");
} else {
lcd.print("Sensor Error");
while (1);
}
delay(2000);
lcd.clear();
}
void loop() {
lcd.setCursor(0, 0);
lcd.print("Place Finger...");
lcd.setCursor(0, 1);
lcd.print(" ");
int result = getFingerprintID();
if (result >= 0) {
lcd.clear();
lcd.print("Access Granted");
unlockDoor();
} else if (result == -1) {
lcd.clear();
lcd.print("Access Denied");
delay(1500);
}
lcd.clear();
}
int getFingerprintID() {
finger.getImage();
if (finger.image2Tz() != FINGERPRINT_OK) return -1;
if (finger.fingerSearch() != FINGERPRINT_OK) return -1;
return finger.fingerID; // valid ID returned
}
void unlockDoor() {
digitalWrite(relayPin, HIGH); // open lock
delay(3000); // unlock duration
digitalWrite(relayPin, LOW); // lock again
}
You must add fingerprints before using the system.
- In Arduino IDE, go to File → Examples → Adafruit Fingerprint Sensor Library → Enroll
- Upload the sketch
- Open Serial Monitor
- Type the fingerprint ID number (1–127)
- Place finger twice when instructed
Fingerprint is now stored.
LCD Display Messages
| Event | Message |
|---|---|
| Startup | Fingerprint Access System |
| Ready | Sensor Ready |
| Waiting | Place Finger… |
| Match | Access Granted |
| No Match | Access Denied |
Troubleshooting
- Fingerprint not detected: TX/RX wiring reversed
- LCD not showing text: Wrong I2C address (try 0x3F)
- Solenoid not activating: Check relay NO/COM wiring
- Machine resets: Solenoid drawing current — use separate 12V supply.
Arduino Air Quality Monitoring System
Build your own Arduino-based Air Quality Monitor using sensors like the MQ-135, MQ-7, and DHT11/DHT22. This guide explains how the sensors work, how to wire them, and includes a fully commented Arduino code example.
Components Needed
| Component | Qty | Description |
|---|---|---|
| Arduino Uno / Nano / Mega | 1 | Main microcontroller |
| MQ-135 Gas Sensor | 1 | Detects VOCs, NH₃, CO₂, smoke, pollution |
| DHT11 or DHT22 | 1 | Temperature & Humidity |
| MQ-7 (optional) | 1 | Carbon Monoxide sensor |
| 0.96″ OLED (optional) | 1 | Displays readings |
| Breadboard & Jumper Wires | – | Wiring |
| USB Cable | 1 | Power + programming |
How the Sensors Work
MQ-135 (Air Quality Sensor)
Detects harmful gases such as CO₂, NH₃, NOx, benzene, and VOCs. The analog output value increases when the air becomes more polluted. Requires a short preheat time for accuracy.
MQ-7 (Carbon Monoxide)
Detects CO gas. Optional component for advanced monitoring.
DHT11 / DHT22
Reads temperature and humidity. These values help interpret gas sensor readings more accurately.
MQ-135 Wiring
MQ135 → Arduino VCC → 5V GND → GND A0 → A0
DHT11 / DHT22
DHT Sensor → Arduino VCC → 5V GND → GND DATA → D2
OLED (I2C)
OLED → Arduino VCC → 5V GND → GND SDA → A4 SCL → A5
Arduino Code (Copy & Paste)
#include <DHT.h>
#define DHTPIN 2
#define DHTTYPE DHT22 // change to DHT11 if needed
DHT dht(DHTPIN, DHTTYPE);
int mq135Pin = A0;
void setup() {
Serial.begin(9600);
dht.begin();
}
void loop() {
// --- Read MQ135 Sensor ---
int mqValue = analogRead(mq135Pin);
float airQuality = map(mqValue, 0, 1023, 0, 500);
// 0 = clean air, 500 = very polluted
// --- Read Temperature & Humidity ---
float humidity = dht.readHumidity();
float temperature = dht.readTemperature();
// --- Output Data ---
Serial.println("----------- AIR QUALITY MONITOR -----------");
Serial.print("MQ135 Raw Value: ");
Serial.println(mqValue);
Serial.print("Air Quality Index (approx): ");
Serial.print(airQuality);
Serial.println(" / 500");
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println(" *C");
Serial.print("Humidity: ");
Serial.print(humidity);
Serial.println(" %");
Serial.println("-------------------------------------------\\n");
delay(1000);
}
Understanding the Readings
| MQ135 Reading | Air Quality | Description |
|---|---|---|
| 0–80 | Excellent | Very clean air |
| 80–150 | Good | Normal indoor air |
| 150–250 | Moderate | Needs ventilation |
| 250–350 | Poor | Polluted environment |
| 350–500+ | Hazardous | High VOCs or smoke detected |
Troubleshooting
- Sensor always reads high: MQ-135 needs 1–5 minutes warm-up time.
- No DHT readings: Check DATA pin and DHT type in code.
- Unstable values: Add a 100nF decoupling capacitor to MQ sensor.
- OLED not showing: Wrong I2C address — run an I2C scanner.