Talaan ng mga Nilalaman:
- Hakbang 1: Ano ang isang AD Converter?
- Hakbang 2: Ginamit na Mga Mapagkukunan
- Hakbang 3: ESP32 ADC
- Hakbang 4: Ginamit ang Circuit
- Hakbang 5: Ginamit na Pag-sign
- Hakbang 6: Nakuha ang Data ng Oscilloscope
- Hakbang 7: Nakuha ang Data ng Oscilloscope (csv File sa Excel)
- Hakbang 8: Nakuha ang Data ng ADC
- Hakbang 9: Nakuha ang Data ng ADC - Excel
- Hakbang 10: Paghahambing sa Mga Rampa ng Pag-akyat
- Hakbang 11: Pagkukumpara sa Bilang ng mga Sampol
- Hakbang 12: Pagpuno ng Mga Puwang - Linya ng Trend
- Hakbang 13: Pagpuno sa mga Puwang - Baitang 2 Polynomial Curve
- Hakbang 14: Pagpuno ng mga Puwang - Sinusuri ang Pag-andar
- Hakbang 15: Pagko-convert sa Oscilloscope Voltage sa isang Katumbas na Halaga upang Paghambingin Sa ADC
- Hakbang 16: Paghahambing sa Dalawang Rampa na Nakuha
- Hakbang 17: Pag-uugali ng Pagkakaiba sa Pagbasa ng ADC (ERROR)
- Hakbang 18: Pag-uugali ng Pagkakaiba ng ADC sa Pagbasa - Paghahanap ng Pag-andar ng Pagwawasto
- Hakbang 19: Paggamit ng Iba Pang Software
- Hakbang 20: Patuloy at Pag-setup ()
- Hakbang 21: Loop () at ang Pag-andar ng Pagwawasto
- Hakbang 22: Paggamit ng PolySolve Correction Function
- Hakbang 23: Makunan Gamit ang Pagwawasto - Serial ng Plotter
- Hakbang 24: Gastos sa Computational
- Hakbang 25: Test Code - Setup () at Loop Start ()
- Hakbang 26: Code ng Pagsubok - Loop () at Pagproseso
- Hakbang 27: Code ng Pagsubok - Loop () - Mga Resulta
- Hakbang 28: Code ng Pagsubok - Mga Ginamit na Pag-andar
- Hakbang 29: Mga File
Video: Alam Mo Tungkol sa Pagsasaayos ng ESP32 ADC ?: 29 Mga Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:13
Ngayon, pag-uusapan ko ang tungkol sa isang mas teknikal na isyu, ngunit sa palagay ko dapat alam ng lahat na gumagana sa ESP32: ang isyu ng ADC (analog-to-digital converter) na basahin ang pagsasaayos. Mahahanap ko ito na mahalaga sapagkat kapag gumagawa ng isang "pagsukat," lalo na sa isang instrumento na mayroong isang analog output, kailangan mong tiyakin na ang pagbasa ay ginanap nang tama.
Samakatuwid, sa video ngayon, magsasagawa kami ng mga sukat gamit ang "analog-digital converter" ng ESP32, obserbahan ang mga pagkakaiba sa conversion, at maglalapat ng pamamaraan ng pagsasaayos / pagkakalibrate ng ADC.
Hakbang 1: Ano ang isang AD Converter?
Ang isang AD converter ay isang circuit na may kakayahang isalin ang isang analog (tuloy-tuloy) na dami sa mga halagang digital (discrete). Anong ibig sabihin niyan? Nangangahulugan ito na habang ang mga digital na halaga ay maaari lamang ipalagay ang mga discrete na halaga na nabuo sa pamamagitan ng pagsasama ng mga zero at isa, ang isang analog na dami ay maaaring ipalagay ang anumang halaga sa loob ng isang saklaw. Halimbawa, kung sinusukat namin ang boltahe ng isang perpektong cell ng AA, maaari kaming makahanap ng anumang halaga sa pagitan ng 0V at 1.5V, dahil ito ang dami ng analog. Ang estado ng output ng isang perpektong ilawan ay dapat na ipalagay lamang dalawang mga estado (off o sa), na kung saan ay isang discrete magnitude. Dahil gumagana ang mga microcontroller gamit ang discrete logic na ito, kailangan namin ng isang circuit na may kakayahang isalin ang isang analog na dami sa digital (o discrete).
Hakbang 2: Ginamit na Mga Mapagkukunan
• Isang Lolin32 Lite card v1.0.0
• Isang Tektronix TDS1001C oscilloscope para sa pagkuha
• Isang USB cable para sa ESP32
• Isang Hantek DSO4102C oscilloscope bilang isang generator ng signal
Hakbang 3: ESP32 ADC
Ayon sa data ng Espressif, ang mga chips ng ESP32 ay maaaring magpakita ng isang pagkakaiba +/- 6% mula sa isang maliit na tilad patungo sa isa pa sa sinusukat na mga resulta.
Bilang karagdagan, ang conversion ay HINDI may isang linear na sagot para sa bawat magagamit na saklaw para sa pagbabasa. Nagbibigay ang Espressif ng isang paraan para sa pagkakalibrate at nagmumungkahi na magpatupad ang mga gumagamit ng iba pang mga pamamaraan kung sa palagay nila kinakailangan upang makamit ang nais na kawastuhan.
Gagawa kami ng isang acquisition ng data, at mula rito, ipapakita namin ang mga tugon sa ADC at isang halimbawa ng paglalapat ng proseso ng matematika upang mabasa ang pagsasaayos.
Mayroong maraming (mas simple o mas kumplikadong) mga paraan upang magawa ang mga pag-aayos na ito. Nasa sa iyo ang suriin ang pinakaangkop para sa iyong proyekto.
Ang isang ipinakita dito ay magkakaroon ng isang nakalarawang layunin at subukang tugunan ang mga kagiliw-giliw na puntong maaaring makita sa mga pagsasaayos.
Hakbang 4: Ginamit ang Circuit
Gumamit ako ng isang oscilloscope na may signal generator na hanggang 25 MHz, ang Hantek DSO4102C. Lumikha kami ng isang alon na nabasa ng ESP A / D at ng oscilloscope. Ang nakalap na data ay naitala sa csv at sa isang spreadsheet, na iiwan ko sa dulo ng artikulo para ma-download.
Hakbang 5: Ginamit na Pag-sign
Pinili namin ang isang mababang-dalas na signal ng trapezoidal na nagbibigay-daan sa pag-access sa mga rampa na tumatakbo sa buong saklaw ng conversion. Pinapayagan nito ang isang malaking bilang ng mga sample sa mga rampa na ito.
Hakbang 6: Nakuha ang Data ng Oscilloscope
Ang imahe ng pagkuha ay ginanap ng oscilloscope. Ang data ay naimbak sa isang csv file. Tandaan ang bahagyang kurbada sa tumataas at bumabagsak na mga rampa ng signal.
Hakbang 7: Nakuha ang Data ng Oscilloscope (csv File sa Excel)
Mayroon kaming mga sampling dito.
Hakbang 8: Nakuha ang Data ng ADC
Sa pamamagitan ng pagbabago ng rate ng paglipat ng serial, maaari nating tingnan ang data na nakuha ng ADC. Pagmasdan ang pagpapapangit ng signal ng trapezoidal.
Ang data na sinusunod sa serial plotter ng Arduino IDE
Hakbang 9: Nakuha ang Data ng ADC - Excel
Gamit ang isang mas mataas na rate at ang serial terminal, maaari naming makuha ang mga halaga at ilapat ang mga ito sa Excel para sa aming mga paghahambing.
Hakbang 10: Paghahambing sa Mga Rampa ng Pag-akyat
Pinaghahambing namin ang dalawang pag-akyat sa mga ramp ng dalawang catch.
Tandaan ang curvature na nangyayari sa parehong rampa.
Tandaan din na para sa parehong rampa, marami kaming iba pang mga sample ng ESP32 kaysa mula sa oscilloscope.
Hakbang 11: Pagkukumpara sa Bilang ng mga Sampol
Dahil ang ESP32 ay nagbigay ng isang mas malaking bilang ng mga sample kaysa sa oscilloscope, kailangan naming ihambing ang mga halagang ito, dahil magsisilbi silang isang index upang ihambing ang dalawang kurba.
Para sa mga ito, gumawa kami ng isang direktang paghahambing.
Mayroon kaming 305 na sample para sa oscilloscope ramp at 2365 sample para sa ADC ramp.
Dahil ang mga rampa ay pareho ng saklaw, masasabi nating mayroon kaming humigit-kumulang na 7.75 na mga sample ng ADC para sa bawat oscilloscope.
Ang pagpaparami ng index ng bawat sample ng oscilloscope ay may parehong kurba, ngunit may mga indeks na katumbas ng ADC at muling ibinahaging data.
Upang punan ang nawawalang data para sa mga bagong posisyon, maglalapat kami ng isang kurba na istatistikal na umaangkop sa kilalang data.
Hakbang 12: Pagpuno ng Mga Puwang - Linya ng Trend
Piliin ang kilalang data (mga asul na tuldok), sa pamamagitan ng pag-click at pagkatapos ay pag-click gamit ang kanang pindutan, pipiliin namin ang: "Magdagdag ng linya ng Trend …"
Sa lilitaw na window, pipiliin namin ang uri ng Polynomial (sapat na ang order 2).
Sinuri din namin ang mga pagpipilian na "Tingnan ang Equation sa tsart" at "Ipakita ang R-square na halaga sa tsart".
Nag-click kami sa "Close".
Hakbang 13: Pagpuno sa mga Puwang - Baitang 2 Polynomial Curve
Binibigyan kami ng Excel ng dalawang bagong impormasyon; ang pangalawang-order na equation na pinakamahusay na umaangkop sa data, at ang R-square na equation na tumutukoy sa pagiging sapat na ito.
Tandaan lamang na ang mas malapit sa 1, mas naaangkop ang equation.
Huwag nating tuklasin ang kasangkot na matematika, gamitin lamang natin ito bilang isang tool.
Hakbang 14: Pagpuno ng mga Puwang - Sinusuri ang Pag-andar
Punan natin ang mga puwang ng sampling ng data na nabuo ng equation. At pagkatapos, ihambing ang mga ito sa bawat punto.
y = -9E-08x2 + 0, 0014x + 0, 1505
R² = 0, 9999
Boltahe ng oscilloscope = -9E-08 * index2 + 0, 0014 * index + 0, 1505
Hakbang 15: Pagko-convert sa Oscilloscope Voltage sa isang Katumbas na Halaga upang Paghambingin Sa ADC
Samantalahin natin ito upang baguhin din ang halaga ng boltahe ng oscilloscope sa isang katumbas na halaga ng ADC.
Tulad ng pinakamataas na halagang nakuha sa ADP ng ESP32 ay 4095, na katumbas ng pagbabasa ng 2.958V para sa parehong index, masasabi natin na:
Ang bawat volt sa mga sukat ng oscilloscope ay katumbas ng tinatayang 1384.4 na mga yunit ng AD. Samakatuwid, maaari nating i-multiply ang lahat ng mga sukat ng oscilloscope ng halagang ito.
Hakbang 16: Paghahambing sa Dalawang Rampa na Nakuha
Ipinapakita ang pagkakaiba na nakuha sa dalawang pagbasa.
Hakbang 17: Pag-uugali ng Pagkakaiba sa Pagbasa ng ADC (ERROR)
Ipinapakita ng curve sa ibaba kung paano kumikilos ang pagkakaiba sa pagbabasa ng ADC bilang isang function ng pagsukat. Papayagan kami ng koleksyon ng data na ito upang makahanap ng isang function ng pagwawasto.
Upang hanapin ang curve na ito, isinalarawan lamang namin ang pagkakaiba na matatagpuan sa bawat sukat bilang isang pagpapaandar ng bawat posibleng posisyon ng AD (0 hanggang 4095).
Hakbang 18: Pag-uugali ng Pagkakaiba ng ADC sa Pagbasa - Paghahanap ng Pag-andar ng Pagwawasto
Maaari naming matukoy sa Excel ang isang pag-andar sa pagwawasto sa pamamagitan ng pagdaragdag ng isang Trend Line, ngayon ng isang mas mataas na degree, hanggang sa ito ay magkasya nang sapat sa aming data.
Hakbang 19: Paggamit ng Iba Pang Software
Ang iba pang mga kagiliw-giliw na software para sa pagtukoy ng mga curve ay PolySolve, na maaaring direktang magamit sa link: https://arachnoid.com/polysolve/ o nai-download bilang isang application ng Java.
Pinapayagan nito ang paglalapat ng mas mataas na antas na polynomial regressions at paghahatid ng naka-format na function, pati na rin ang iba pang mga pagpapaandar.
Upang magamit ito, ipasok lamang ang data sa unang text box. Dapat sundin ng data ang pagkakasunud-sunod ng X, Y na pinaghiwalay ng isang kuwit, o tab. Mag-ingat sa paggamit ng tamang tuldok bilang isang decimal point.
Lilitaw ang isang tsart sa susunod na kahon kung ang naipasok na data ay na-format nang tama.
Narito kung paano nagpunta ang aming curve ng error sa ADC.
Ipapakita ng window na ito ang resulta ng pagbabalik, kasama ang data ng pagiging sapat ng pagpapaandar, na kung saan ay maaaring mai-format ang output nito sa maraming paraan: bilang isang function na C / C ++, isang listahan ng mga koepisyent, isang pagpapaandar na nakasulat sa Java, atbp.
Tandaan: Bigyang pansin ang mga separator ng decimal
Hakbang 20: Patuloy at Pag-setup ()
Ituro ko dito ang GPIO na ginamit para sa pagkuha ng analog. Pinasimulan ko ang serial port, pati na rin ang pin na tinutukoy para sa pagkuha ng analog.
Const int pin_leitura = 36; // GPIO usado para captura analógica void setup () {Serial.begin (1000000); // Iniciciando a porta serial somente para debug pinMode (pin_leitura, INPUT); // Pino utilizado para captura analógica}
Hakbang 21: Loop () at ang Pag-andar ng Pagwawasto
Ginagawa namin ang pagkuha ng naayos na boltahe, at nai-print namin ang mga halaga na mayroon o walang mga tamang pagwawasto.
void loop () {int valor_analogico = analogRead (pin_leitura); // realiza a captura da tensão ajustada //Serial.print(valor_analogico + f (valor_analogico)); // imprime os valores para debug (COM CORREÇÃO) Serial.print (valor_analogico); // imprimime os valores para debug (SEM CORREÇÃO) Serial.print (","); Serial.print (4095); // cria uma linha para marcar o valor máximo de 4095 Serial.print (","); Serial.println (0); // cria uma linha para marcar o valor mínimo de 0}
Pansinin sa linya 12 na mayroon kaming pagpipilian na i-print ang data na may pagdaragdag ng pagkakaiba sa pagpapaandar f (analog_value).
Hakbang 22: Paggamit ng PolySolve Correction Function
Dito, ginagamit namin ang pagpapaandar ng PolySolve sa loob ng Arduino IDE.
/ * Mode: normal Polynomial degree 6, 2365 x, y mga pares ng data Coefficient ng ugnayan (r ^ 2) = 9, 907187626418e-01 Karaniwang error = 1, 353761109831e + 01 Form ng output: C / C ++ function: Copyright © 2012, P. Lutus - https://www.arachnoid.com. Nakareserba ang Lahat ng Karapatan. * / doble f (doble x) {return 2.202196968876e + 02 + 3.561383996027e-01 * x + 1.276218788985e-04 * pow (x, 2) + -3.470360275448e-07 * pow (x, 3) + 2.082790802069e- 10 * pow (x, 4) + -5.306931174991e-14 * pow (x, 5) + 4.787659214703e-18 * pow (x, 6); }
Tandaan ang pagbabago ng kuwit ayon sa tuldok na naghihiwalay.
Hakbang 23: Makunan Gamit ang Pagwawasto - Serial ng Plotter
Hakbang 24: Gastos sa Computational
Upang maisagawa ang mga kalkulasyon ng polynomial, kinakailangan upang hawakan ng processor ang gawaing ito. Maaari itong humantong sa pagkaantala sa pagpapatupad, nakasalalay sa source code at magagamit na lakas ng computing.
Dito, nakikita namin ang isang talahanayan ng resulta ng isang pagsubok na gumagamit ng mga multi-degree polynomial. Pansinin ang pagkakaiba sa pagitan ng mga oras kung kailan ginamit ang pagpapaandar ng pow () at kung kailan hindi.
Hakbang 25: Test Code - Setup () at Loop Start ()
Narito, mayroon kaming code na ginamit sa aming pagsubok.
void setup () {Serial.begin (1000000); // Iniciando a porta serial somente para debug} void loop () {float valor_analogico = 500.0; // um valor arbtrario float quantidade = 10000.0; // quantidade de chamadas float contador = 0.0; // contador de chamadas
Hakbang 26: Code ng Pagsubok - Loop () at Pagproseso
Ginamit ko ang pagpapaandar ng micros () upang makuha ang halaga sa mga microsecond.
// ================= inicia o processo float agora = micros (); // marca o instante hindi opisyal habang (contador <quantidade) {// v (valor_analogico); // função vazia // r (valor_analogico); // função com retorno // f0 (valor_analogico); // grau 0 // f1 (valor_analogico); // grau 1 // f2 (valor_analogico); // grau 2 // f3 (valor_analogico); // grau 3 // f4 (valor_analogico); // grau 4 // f5 (valor_analogico); // grau 5 // f6 (valor_analogico); // grau 6 // f13_semPow (valor_analogico); // grau 13º SEM a função POW // f13_comPow (valor_analogico); // grau 13º COM a função POW contador ++; } agora = (micros () - agora) / dami; // determina o intervalo que se passou para cada iteração // ========= finaliza o processo
Hakbang 27: Code ng Pagsubok - Loop () - Mga Resulta
Nai-print namin ang halagang ibinalik mula sa pag-andar ng grade 13 na mayroon at walang POW para sa paghahambing, pati na rin ang agwat ng pagproseso.
// imprime o valor retornado da função de grau 13 com e sem POW para comparação Serial.print (f13_semPow (valor_analogico)); // grau 13º SEM a função POW Serial.print ("-"); Serial.print (f13_comPow (valor_analogico)); // grau 13º COM a função POW Serial.print ("-"); // imprime o intervalo do processamento Serial.println (agora, 6); }
Hakbang 28: Code ng Pagsubok - Mga Ginamit na Pag-andar
Walang laman na mga pag-andar (may pagbabalik lamang) ng degree 0 at 1.
// FUNÇÃO VAZIAdouble v (double x) {} // FUNÇÃO SOMENTE COM RETORNO doble r (doble x) {return x; } // FUNÇÃO DE GRAU 0 doble f0 (dobleng x) {return 2.202196968876e + 02; } // FUNÇÃO DE GRAU 1 doble f1 (doble x) {return 2.202196968876e + 02 + 3.561383996027e-01 * x; }
Mga pagpapaandar sa Baitang 2, 3, at 4.
// FUNÇÃO DE GRAU 2doble f2 (doble x) {return 2.202196968876e + 02 + 3.561383996027e-01 * x + 1.276218788985e-04 * pow (x, 2); } // FUNÇÃO DE GRAU 3 doble f3 (dobleng x) {return 2.202196968876e + 02 + 3.561383996027e-01 * x + 1.276218788985e-04 * pow (x, 2) + -3.470360275448e-07 * pow (x, 3); } // FUNÇÃO DE GRAU 4 dobleng f4 (dobleng x) {return 2.202196968876e + 02 + 3.561383996027e-01 * x + 1.276218788985e-04 * pow (x, 2) + -3.470360275448e-07 * pow (x, 3) + 2.082790802069e-10 * pow (x, 4); }
Mga pagpapaandar sa Baitang 5 at 6.
// FUNÇÃO DE GRAU 5doble f5 (dobleng x) {return 2.202196968876e + 02 + 3.561383996027e-01 * x + 1.276218788985e-04 * pow (x, 2) + -3.470360275448e-07 * pow (x, 3) + 2.082790802069e-10 * pow (x, 4) + -5.306931174991e-14 * pow (x, 5); } // FUNÇÃO DE GRAU 6 doble f6 (dobleng x) {return 2.202196968876e + 02 + 3.561383996027e-01 * x + 1.276218788985e-04 * pow (x, 2) + -3.470360275448e-07 * pow (x, 3) + 2.082790802069e-10 * pow (x, 4) + -5.306931174991e-14 * pow (x, 5) + 4.787659214703e-18 * pow (x, 6); }
Pag-andar ng grade 13 gamit ang POW.
// FUNÇÃO DE GRAU 13 USANDO O POWdoble f13_comPow (doble x) {return 2, 161282383460e + 02 + 3, 944594843419e-01 * x + 5, 395439724295e-04 * pow (x, 2) + -3, 968558178426e-06 * pow (x, 3) + 1, 047910519933e-08 * pow (x, 4) + -1, 479271312313e-11 * pow (x, 5) + 1, 220894795714e-14 * pow (x, 6) + -6, 136200785076e-18 * pow (x, 7) + 1, 910015248179e-21 * pow (x, 8) + -3, 566607830903e-25 * pow (x, 9) + 5, 000280815521e-30 * pow (x, 10) + 3, 434515045670e-32 * pow (x, 11) + -1, 407635444704e-35 * pow (x, 12) + 9, 871816383223e-40 * pow (x, 13); }
Pag-andar ng grade 13 nang hindi gumagamit ng POW.
// FUNÇÃO DE GRAU SEM USAR O POWdoble f13_semPow (doble x) {return 2, 161282383460e + 02 + 3, 944594843419e-01 * x + 5, 395439724295e-04 * x * x + -3, 968558178426e-06 * x * x * x + 1, 047910519933e-08 * x * x * x * x + -1, 479271312313e-11 * x * x * x * x * x + 1, 220894795714e-14 * x * x * x * x * x * x + -6, 136200785076e-18 * x * x * x * x * x * x * x + 1, 910015248179e-21 * x * x * x * x * x * x * x * x + -3, 566607830903e- 25 * x * x * x * x * x * x * x * x * x + 5, 000280815521e-30 * x * x * x * x * x * x * x * x * x * x + 3, 434515045670e- 32 * x * x * x * x * x * x * x * x * x * x * x + -1, 407635444704e-35 * x * x * x * x * x * x * x * x * x * x * x * x + 9, 871816383223e-40 * x * x * x * x * x * x * x * x * x * x * x * x * x; }
Hakbang 29: Mga File
I-download ang mga file:
INO
Spreadsheet
Inirerekumendang:
Walang Pee Ngayon, Device ng Pagsasaayos ng Pag-uugali ng Alaga na Humihinto sa Mga Pusa sa Pag-ikot sa Iyong Tahanan: 4 na Hakbang
Walang Pee Ngayon, Device ng Pag-aayos ng Pag-uugali ng Alaga na Humihinto sa Mga Pusa sa Pee sa Iyong Tahanan: Nababagabag ako sa aking kitty na gusto niyang umihi sa aking kama, sinuri ko ang lahat ng kailangan niya at dinala ko din siya sa vet. Matapos kong guluhin ang lahat ng naiisip ko at nakikinig sa salita ng doktor, napagtanto kong mayroon lamang siyang masamang pag-uugali. Kaya't
Ano ang Hindi Mong Alam Tungkol sa Recycle Bin !!: 6 Mga Hakbang
Ano ang Hindi Mong Malaman Tungkol sa Recycle Bin !!: Ipapakita sa iyo ng Maituturo na ito ang ilang mga bagay na marahil ay hindi mo alam tungkol sa recycle binPag-subscribe sa aking channelThanks
Pagsasaayos ng Mga Assignment sa Pagsulat Sa Mga Form ng Google + AutoCrat: 12 Hakbang
Structuring Writing Assignments With Google Forms + AutoCrat: Nahihirapan ba ang iyong mga mag-aaral sa pagbubuo ng mga pahayag ng thesis, pagpapakilala, abstract o buong takdang-aralin sa pagsulat? Nakatanggap ka ba ng mga sanaysay na hindi nakasunod sa isang tukoy na format? Kung gayon, gamitin ang Google Forms at ang extension ng Chrome na autoCrat upang mapanatili
Bike Simulator Na May Pagsasaayos ng Bilis na Real-time: 5 Mga Hakbang
Bike Simulator With Real-time Speed Adjustment: Gumagamit ang proyektong ito ng isang magnetic reed switch upang lumikha ng isang speedometer at makontrol ang bilis ng video ng mga first-person na pagbibisikleta ng mga video sa YouTube o iba pang media. Kinakalkula ng Arduino ang mph at pagkatapos ay ginagamit ang impormasyong iyon upang gayahin ang isang pindutan ng computer button.
I-convert (Tungkol lamang sa) Anumang Media File sa (Tungkol lamang sa) Anumang Iba Pang Media File nang Libre !: 4 Mga Hakbang
I-convert (Tungkol lamang sa) Anumang File ng Media sa (Tungkol lamang) Anumang Iba Pang Media File nang Libre!: Ang aking unang itinuro, tagay! Gayunpaman, nasa Google ako na naghahanap ng isang libreng programa na magko-convert sa aking mga file sa Youtube.flv sa isang format na ay mas unibersal, tulad ng.wmv or.mov. Naghanap ako ng hindi mabilang na mga forum at website at pagkatapos ay nakakita ako ng isang programa na tinatawag na