Darasi na 14/31-4: Misali na coding map() na Arduino 1
Wannan koyarwar wani bangare ne na jerin shirye-shiryen Arduino kuma tana mai da hankali kan amfani da aikin map(). A cikin wannan darasi, za ku koyi yadda ake canza darajar kashi (0–100) zuwa darajar PWM (Pulse Width Modulation) (0–255) don sarrafa hasken LED. Maimakon yin lissafin da hannu cewa 60% yayi daidai da 153, aikin map() yana sarrafa juyar da layi a gare ku, yana sa lambar ku ta zama mai tsabta kuma mafi fahimta.
Wannan dabara tana da muhimmanci ga yawancin aikace-aikace na gaske inda kuke buƙatar fassara karatun firikwensin ko shigarwar masu amfani zuwa jeri daban-daban. Misali, kuna iya amfani da shi don:
- Sarrafa saurin motar DC bisa karatun potentiometer.
- Nuna ƙimar firikwensin zafin jiki a kan sikelin 0-100%.
- Taswirar haɗin gwiwar joystick zuwa kusurwoyin motar servo.
- Daidaita hasken LED bisa firikwensin hasken yanayi.
- Canza karatun analog na 0-5V zuwa ƙimar dijital 0-1023 ko akasin haka.
Kayan aiki/Abubuwan haɗi
Don bin wannan aikin, kuna buƙatar waɗannan abubuwan:
- Allon Arduino (Uno, Nano, da sauransu)
- LED
- Resistor na 220-ohm
- Wayoyin haɗi
- Breadboard (na zaɓi, amma an ba da shawarar)
Jagorar haɗin waya
A cikin bidiyon, malami yana nuna aikin ta amfani da saitin wayoyi daga darasin da ya gabata kan rage hasken LED. Kewayen yana da sauƙi: haɗa anode (ƙafar doguwa) na LED zuwa resistor na 220-ohm, sannan haɗa ƙarshen wannan resistor zuwa fil 3 na dijital akan Arduino. Haɗa cathode (ƙafar gajeru) na LED kai tsaye zuwa filin ƙasa (GND) akan Arduino.
Bayanin lambar
Lambar wannan misalin tana da taƙaitacciya sosai, tare da ainihin dabaru a cikin aikin setup(). Bari mu raba sassan da mai amfani zai iya daidaitawa.
int LEDpin = 3; //defind pin for LED
Wannan layin yana bayyana filin Arduino wanda LED ɗinku yake haɗe. A wannan misalin, an saita shi zuwa fil 3, wanda fil ne mai iya PWM, wanda ake buƙata don fitar da analog. Kuna iya canza wannan lambar idan kun haɗa LED ɗinku zuwa wani fil na PWM daban.
int b=8;//60% brightness
Wannan shine mabuɗin mai canzawa da za ku canza don gwada matakan haske daban-daban. Yana wakiltar hasken da ake so a matsayin kashi. Sharhin a cikin lambar yana cewa "60%", amma an saita ƙimar zuwa 8 don dalilai na nunawa a cikin bidiyon. Kuna iya canza wannan zuwa kowane lamba tsakanin 0 da 100. Misali, saita b = 60 zai wakiltar matakin haske na 60%.
int brightness = map(b, 0, 100, 0,255);
Wannan shine zuciyar darasin. Aikin map() yana ɗaukar ƙimar kashi ɗinku (b) kuma ya canza shi daga ainihin jerinsa (0 zuwa 100) zuwa sabon jerin da ake so (0 zuwa 255). Sakamakon ana adana shi a cikin mai canzawa brightness, wanda aka yi amfani da shi don rubuta ƙimar analog zuwa filin LED.
analogWrite(LEDpin, brightness);// turn the LED on with 60% brightness
A ƙarshe, wannan layin yana aika ƙimar da aka taswira zuwa filin LED ta amfani da analogWrite(). Wannan yana saita zagayowar aikin LED, yana sarrafa haskensa yadda ya kamata. Kyakkyawan wannan hanyar shine kuna buƙatar canza mai canzawa b kawai don sarrafa LED, kuma aikin map() yana sarrafa duk lissafin da ake buƙata.
Aikin kai tsaye/Nunawa
A cikin bidiyon, malami yana loda lambar kuma yana nuna tasirin canza mai canzawa b. Lokacin da aka saita b zuwa 8, mai kula da serial yana buga ƙimar da aka taswira na 20, kuma LED ɗin yana da duhu a bayyane. Canza b zuwa 90 yana haifar da ƙimar da aka taswira na 229, yana sa LED ɗin ya fi haske sosai. Saita b zuwa 100 yana taswira zuwa 255, wanda shine cikakken haske. Wannan nunin aiki a bayyane yana nuna yadda aikin map() ke sauƙaƙa tsarin sarrafa fitarwar analog tare da ƙimar kashi masu sauƙin amfani.
Ayyuka masu alaƙa daga wannan bidiyo
- Darasi 14/31-1: Arduino Millis (babu jinkiri) da ayyukan map | SunFounder Robojax
- Darasi 14/31-2: Arduino coding millis() misali 2 tare da taron
- Darasi 14/31-3: Arduino coding millis() misali 3 tare da maɓallin turawa
- Darasi 14/31-5: Arduino coding map() misali 2
Babuka
- [00:00] Gabatarwa ga Kwas ɗin Arduino na Robojax
- [01:19] Menene millis() kuma me yasa ake amfani da shi
- [05:46] Misali 1: Amfani da millis() don taron da aka tsara lokaci
- [08:29] Misali 2: Amfani da millis() tare da maɓallin turawa
- [12:14] Misali 3: Gano latsa maɓallin na biyu bayan jinkiri
- [17:20] Gabatarwa ga aikin map()
- [19:47] Bayanin lambar don misalin map()
- [20:41] Nunin kai tsaye na aikin map()
/*
Lesson 14/31: Arduino coding map( ) example-1
Get this code and watch video Download and resource page https://robojax.com/RJT597
YouTube video https://www.youtube.com/watch?v=lqgzQohNiIM
* This code is "AS IS" without warranty or liability. Free to be used as long as you keep this note intact.*
* This code has been download from Robojax.com
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
int LEDpin = 3; //defind pin for LED
void setup() {
Serial.begin(9600);//initialize serial monitor with 9600 baud
pinMode(LEDpin, OUTPUT);//set pin as output
int b=8;//60% brightness
int brightness = map(b, 0, 100, 0,255);
Serial.println(brightness);//print it on serial monitor
analogWrite(LEDpin, brightness);// turn the LED on with 60% brightness
}
void loop() {
}
Abin da zaka iya bukata
-
AmazonSunFounder Arduino Learning Kit on AliExpresss.click.aliexpress.com
-
Amazon
-
Amazon
-
Amazon
-
Amazon
Albarkatun da kuma shafukan da za a duba
-
TakarduDocumentation for SunFounder 3 in 1 IoT/Smart Car/Learning Kitdocs.sunfounder.com
-
WajePurchase SunFounder's 3-in-1 Smart car learning kitsunfounder.com
Fayiloli📁
Jagoran Mai Amfani
-
SunFounder 3-in-1 Arduino Smart Car assembly manualThis document shows step by step assembly of SunFounder 3-in-1 Arduino Smart Car
SunFounder_car_assembly_manual.pdf1.20 MB