Raios infravermelhos — это португальский перевод слова «инфракрасные лучи». Инфракрасные лучи — это электромагнитное излучение с большей длиной волны, чем у видимого света. Они обычно используются в различных приложениях, таких как связь, дистанционное зондирование и тепловидение.
Вот несколько методов и примеров кода, связанных с инфракрасными лучами:
-
Инфракрасная связь.
Инфракрасная связь предполагает передачу данных с использованием инфракрасного света. Он обычно используется в пультах дистанционного управления, инфракрасной передаче данных между устройствами и инфракрасных датчиках. Вот простой пример того, как отправлять и получать данные с помощью инфракрасного модуля в Arduino:#include <IRremote.h> IRsend irSender; IRrecv irReceiver(2); decode_results results; void setup() { Serial.begin(9600); irReceiver.enableIRIn(); // Start the infrared receiver } void loop() { if (irReceiver.decode(&results)) { Serial.println(results.value, HEX); // Print the received infrared data irReceiver.resume(); // Enable the receiver to receive the next data } irSender.sendNEC(0x00FF00FF, 32); // Send an example NEC infrared code delay(1000); }
-
Инфракрасное дистанционное зондирование:
Инфракрасное дистанционное зондирование используется для различных приложений, таких как измерение температуры, обнаружение объектов и обнаружение движения. Вот пример использования инфракрасного датчика температуры MLX90614 с Arduino:#include <Wire.h> #include <Adafruit_MLX90614.h> Adafruit_MLX90614 mlx = Adafruit_MLX90614(); void setup() { Serial.begin(9600); mlx.begin(); } void loop() { float ambient = mlx.readAmbientTempC(); float object = mlx.readObjectTempC(); Serial.print("Ambient: "); Serial.print(ambient); Serial.print(" °C\tObject: "); Serial.print(object); Serial.println(" °C"); delay(1000); }
-
Инфракрасное тепловидение.
Инфракрасное тепловидение широко используется для обнаружения тепловых признаков, выявления неэффективности энергопотребления и мониторинга распределения температуры. Вот пример использования тепловизионной камеры Adafruit AMG8833 с Arduino:#include <Wire.h> #include <Adafruit_AMG88xx.h> Adafruit_AMG88xx amg; void setup() { Serial.begin(9600); amg.begin(); amg.setMode(AMG88xx_NORMAL_MODE); } void loop() { float pixels[AMG88xx_PIXEL_ARRAY_SIZE]; amg.readPixels(pixels); for (int i = 0; i < AMG88xx_PIXEL_ARRAY_SIZE; i++) { Serial.print(pixels[i]); Serial.print("\t"); } Serial.println(); delay(1000); }