فهرست مطالب:
- مرحله 1: لایه جلو
- مرحله 2: طراحی لایه راهنما
- مرحله 3: ایجاد لایه راهنما
- مرحله 4: سیم کشی LED ها
- مرحله 5: طراحی وسایل الکترونیکی
- مرحله 6: سیم کشی الکترونیک
- مرحله 7: برنامه نویسی
- مرحله هشتم: مسکن
- مرحله نهم: اظهارات پایانی
تصویری: ساعت نقشه زیرزمینی لندن: 9 مرحله (همراه با تصاویر)
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:51
در سال 2014 ، پس از کارآموزی در مشاوره چاپ سه بعدی در لندن و آزمایش با لیتوفان های رنگی با استفاده از دستگاه Stratasys ، من اکنون هدیه خود را طراحی می کنم ، چاپ سه بعدی رنگی خطوط لوله محلی در دفاتر آنها. من مصمم بودم که از آن چیزی بسازم. 2 سال بعد در سال 2016 ، من چاپگر سه بعدی خود را داشتم و شروع به کار کردم و آن را به صورت یک ساعت تبدیل کردم.
در کودکی ، من ساعتهای دیجیتالی توکیو فلش را بزرگترین چیزها می دانستم و می توانم الهام بخش طراحی آن باشم.
و در حال حاضر فقط 4 سال استراحت جزئی وجود دارد تا بتوانم آن را بنویسم!
در حالی که تکرار دستورالعمل های دقیق دشوار خواهد بود ، و کاهش هزینه در تولید PCB علاقه مندان در چند سال گذشته ممکن است روش دقیق من برای نصب LED را منسوخ کند. امیدوارم ایده های به اشتراک گذاشته شده منجر به ساخت ساعت های عجیب و غریب از اجسام باریک توسط دیگران شود!
مرحله 1: لایه جلو
همانطور که در مقدمه ذکر شد ، این یک چاپ سه بعدی رنگی بود ، من معتقدم که دستگاه Stratasys از یک تخت پودر و یک کارتریج جوهر اصلاح شده برای چسب و رنگدانه استفاده می کرد.
پرونده در تاریخ از بین رفته است ، اما این لایه می تواند هر چیزی باشد ، یک عکس یا یک لیتوفان تک رنگ معجزه می کند.
این بخش در 3DS max در سال 2014 ساخته شده است ، اما امروزه ابزارهای آنلاین برای تبدیل تصویر به SLT بر اساس روشنایی وجود دارد
مرحله 2: طراحی لایه راهنما
اینجاست که ما پیچیدگی پروژه و روش خواندن زمان را تعیین می کنیم. تصاویر 2 ایده ای را نشان می دهد که من با آنها بازی می کردم.
اینها با اسکن در طراحی و ترسیم خطوط در سراسر آن در inkscape انجام شده است.
این ساعت چندان قابل خواندن نیست ، اما من ایده پر کردن خطوط در طول روز را ترجیح دادم تا به هدف طراحی تبدیل شود.
شمارش دودویی یک روش مناسب برای کاهش تعداد LED ها است و اگر باینری مربع شما باشد ، خوانایی را افزایش می دهد ، اما این ایده "خطوط پر کردن" من را تضعیف کرد ، بنابراین گزینه ای برای این پروژه نبود.
در ساعتهای توکیو معمول است که شمارش LED را به حداقل برسانید ، اما با داشتن یک بخش در 3 یا 5 و سپس یک پر کردن دیگر برای هر بار که آن قسمت پر می شود ، از این تکنیک برای دقیقه استفاده می کنم ، تا آنها را از 60 به 20 به علاوه 2 کاهش دهم. چند ثانیه نگران دقت این کار نبود
مرحله 3: ایجاد لایه راهنما
این لایه راهنما برای LED ها دارای 2 هدف است ، LED ها را در جای خود نگه می دارد و از ریختن بین آنها جلوگیری می کند
این به عنوان یک لایه در Inkscape مستقیماً در بالای اسکن که من برای طرح طراحی استفاده می کردم کشیده شد. ضخامت 1 میلی متر قبل از ارسال به چاپگر در مخلوط کن اضافه شد.
این یکی از سخت ترین چاپهایی بود که باید روی Makibox A6 ناچیز خود انجام می دادم ، این قسمت با شکم چاپ شد ، بنابراین یک تن دوغاب استون برای اتصال آن به پلت فرم ساخت با حداقل پیچ خوردگی استفاده شد. خوشبختانه این قسمت در محصول نهایی دیده نمی شود
تصویر نهایی نشان می دهد که آن را برای بررسی فاصله بین چراغ نگه داشته است.
در نگاه آینده ، نشت بین چراغ ها در امتداد یک خط ممکن است برای تصاویر ترجیح داده شود ، خواندن آن سخت نیست ، این را می توان با افزودن یک چمبر به راهنما در طرفهای کوتاه هر چراغ به دست آورد.
مرحله 4: سیم کشی LED ها
تصویر مشت نشان می دهد چاپ آزمایشی که برای بررسی اندازه سوراخ انجام دادم ، من قصد داشتم که LED با اندکی نیروی محکم در توری قرار بگیرد ، سپس هنگام قرار دادن لایه راهنما ، شکل صحیح با دست قرار گرفت.
با توجه به تحمل کم چاپگر سه بعدی من ، برخی از آنها شل شده بودند و نیاز به یک تکه چسب فوق العاده داشتند تا در جای خود بمانند در حالی که دیگران خیلی محکم بودند ، اما با فشار دادن LED هنگام لحیم کاری تشویق شدند ، این در واقع مناسب تر از سوراخ هایی با اندازه مناسب ، که اجاره ای برای بیرون کشیدن آنها داشت.
برای کاهش تعداد سیم ها ، LED ها در ماتریس 7 در 8 لحیم شدند ، بدین معنی که همه 55 LED را می توان تنها با 13 پین کنترل کرد ، من نقشه ای از هر یک از این اتصالات را با دست کشیده بودم که متأسفانه از بین رفته است.
سیم مینای دندان استفاده می شد تا بتوان مقاطع را قبل از ایجاد اتصال با گرم کردن یک قسمت با اتو و قلع اندود در محل قرار داد.
این فرایند بسیار وقت گیر بود ، من به شدت طراحی PCB را توصیه می کنم
مرحله 5: طراحی وسایل الکترونیکی
برنامه اولیه من استفاده از میکروکنترلر آردوینو با RTC بود ، اما ESP8266 را در برد Node MCU D1 انتخاب کردم زیرا امکان صرفه جویی در نور روز خودکار و پتانسیل کنترل WIFI را فراهم می کرد.
برای کاهش بیشتر تعداد پین ها ، من تعداد کاملی از LED ها را داشتم تا بتوانم از MAX7219 (که می تواند تا 64 LED را اداره کند) استفاده کنم.
این IC معمولاً برای هدایت نمایشگرهای LED 7 Segment استفاده می شود ، اما مورد استفاده بسیار مشابهی با من داشت ، چراغهای LED دلخواه را با حداقل چشمک زدن روشن می کرد ، حتی روشنایی قابل کنترل نیز داشت.
تصمیم گرفتم از سیم اصلی برای سیم کشی استفاده کنم ، اما عقاب برای قرار دادن قطعات و درک سیم کشی مفید بود
من فایلهای هیئت مدیره خود را ضمیمه کرده ام ، اما این اولین بار بود که از عقاب استفاده می کردم (و در حال حاضر نسخه قدیمی آن) ، بنابراین فقط برای مرجع است
مرحله 6: سیم کشی الکترونیک
این یک گام ساده تکراری بود ، پس از شماتیک Eagle ، استفاده از سرصفحه برای ESP و ماتریس LED در مونتاژ بسیار کمک کرد.
پین 1 در سرصفحه های LED Anode & Cathode با نوار نقره ای مشخص شده بود ، می توان آنها را بین 7 و 8 دیگر متمایز کرد.
مرحله 7: برنامه نویسی
از آنجا که صفحه نمایش ما یک ماتریس سنتی نیست ، باید روشی برای تجسم اینکه کدام بیت ها را به IC MAX در HEX ارسال می کند ، پیدا کنم. خوشبختانه من فقط به اندازه کافی اکسل می دانم تا به مشکل برسم و یک "جادوگر شش ضلعی" برای راهنمایی من ایجاد کردم ، هرچند الگویی که می خواستم نمایش داده شود ، جعبه های چک دستی را به طور کامل نشان می داد.
این امر با تجدید ارزیابی این که شش ضلعی برای ساعت ، دقیقه و ثانیه من می تواند با استفاده از یک بیت بیتی یا OR ترکیب شود ، ایجاد می کند که آخرین فرمان برای ارسال به max7219 است ، از جمله یک انیمیشن کوچک که به ثانیه ها اضافه کردم تا بتوانم از صفحه اطمینان حاصل کنم. منجمد نشده بود ؛
بنابراین ، تقریباً در پایان. و زمان تصمیم دیگری که خیلی خوب پیر نشده است.
کد ESP در LUA است ، امروز توصیه می کنم از arduino IDE برای اسناد بهتر و کتابخانه بسته قوی استفاده کنید ، در زمانی که جامعه ESP هنوز در حال بلوغ بود و من LUA را به عنوان زبان این پروژه انتخاب کردم.
من تصمیم مشکوکی گرفتم که مرتباً سرورهای Google را برای خواندن زمان پینگ کنم. این به نیاز به RTC برای به حداقل رساندن رانش ، این کار می کند ، اما شما بهتر است از API زمان واقعی استفاده کنید.
halfSec = 0 ساعت = 0 دقیقه = 0 ثانیه = 0
شدت کم = 0
شدت بالا = 9
SSID محلی = "Wifi"
SSID_PASSWORD محلی = "رمز عبور"
time function () -برای دریافت زمان و تاریخ فعلی به اینترنت متصل شوید
if wifi.sta.getip () سپس conn محلی = net.createConnection (net. TCP، 0) conn: اتصال (80 ، "google.com")
conn: on ("اتصال" ،
function (conn، payload) conn: send ("HEAD/HTTP/1.1 / r / n".. "میزبان: time.is / r / n".. "قبول: */ *\ r / n".. " نماینده کاربر: Mozilla/4.0 (سازگار ؛ esp8266 Lua؛) ".." / r / n / r / n ") انتها)
conn: on ("دریافت" ،
تابع (conn ، payload) -چاپ (payload) conn: close () local p = string.find (payload، "GMT") -رشته زمان و تاریخ را در محموله از اینترنت بیابید ، برای منطقه زمانی تغییر دهید اگر p ~ = صفر-استخراج اعداد مربوط به ساعت ، دقیقه ، ثانیه ، روز ، ماه 6 ، p-5)) second = tonumber (string.sub (payload، p-3، p-2)) addHour ()-سخت کدگذاری BST (زمان تابستان انگلیس) صرفه جویی در نور روز (ساعت ، دقیقه ، ثانیه) نیم ثانیه = (دوم٪ 6)*2 -چاپ (halfSec) دیگری چاپ ("به روزرسانی وب ناموفق بود!") پایان پایان -عملکرد) -پایان رویداد "دریافت"
conn: on ("قطع ارتباط" ،
تابع (conn ، payload) conn = sil payload = sil end) پایان چاپ ("هنوز فای وجود ندارد") پایان
تابع borTable (a ، b ،…) -جداول یا جداول با هم
اگر arg [1] سپس b = borTable (b ، باز کردن (arg)) پایان z = {} برای i ، v در ipairs (a) انجام table.insert (z ، bit.bor (v ، b )) end بازگشت z end
تابع bxorTable (a ، b ،…) -جداول دو طرفه یا جداگانه
اگر arg [1] سپس b = bxorTable (b ، باز کردن (arg)) پایان z = {} برای i ، v در ipairs (a) انجام table.insert (z ، bit.bxor (v ، b )) end بازگشت z end
تابع addSecond ()
دوم = دوم+1 اگر دوم> = 60 سپس دوم = 0 دقیقه = دقیقه+1 اگر دقیقه> = 60 سپس دقیقه = 0 addHour () پایان پایان پایان
تابع addHour ()
ساعت = ساعت+1 اگر ساعت> = 24 سپس ساعت = 0 پایان اگر ساعت == 2 یا ساعت == 16 سپس max7219.setIntensity (کم شدت) پایان اگر ساعت == 8 یا ساعت == 18 سپس max7219.setIntensity (شدت زیاد) end end function update () local secGap = 6 minGap محلی = 3 horGap محلی = 1 ثانیه محلی = {{0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00}، {0x00، 0x00، 0x00، 0x00، 0x00 ، 0x00، 0x00، 0x02}، {0x00، 0x00، 0x00، 0x00، 0x00، 0x02، 0x00، 0x02}، {0x00، 0x00، 0x00، 0x00، 0x00، 0x02، 0x00، 0x03}، {0x00، 0x00، ، مقدار 0x00، مقدار 0x00، 0x02، 0x01 موجود، 0x03}، {مقدار 0x00، مقدار 0x00، مقدار 0x00، مقدار 0x00، مقدار 0x00، 0x03، 0x01 موجود، 0x03}، {مقدار 0x00، مقدار 0x00، مقدار 0x00، مقدار 0x00، 0x01 موجود، 0x03، 0x01 موجود، 0x03}، {مقدار 0x00 ، مقدار 0x00، مقدار 0x00، 0x01 موجود، 0x01 موجود، 0x03، 0x01 موجود، 0x03}، {مقدار 0x00، مقدار 0x00، 0x01 موجود، 0x01 موجود، 0x01 موجود، 0x03، 0x01 موجود، 0x03}، {مقدار 0x00، 0x01 موجود، 0x01 موجود، 0x01 موجود، 0x01 موجود، 0x03، 0x01 موجود، 0x03 } ، {0x01 ، 0x01 ، 0x01 ، 0x01 ، 0x01 ، 0x03 ، 0x01 ، 0x03}} ؛ دقیقه محلی = {{0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00}، {0x00، 0x00، 0x00، 0x00، 0x02، 0x00، 0x00، 0x00}، {0x00، 0x00، 0x00، 0x00، 0x02 ، مقدار 0x00، 0x02، مقدار 0x00}، {مقدار 0x00، مقدار 0x00، مقدار 0x00، 0x02، 0x02، مقدار 0x00، 0x02، مقدار 0x00}، {مقدار 0x00، مقدار 0x00، 0x02، 0x02، 0x02، مقدار 0x00، 0x02، مقدار 0x00}، {مقدار 0x00، 0x02، 0x02 ، 0x02، 0x02، مقدار 0x00، 0x02، مقدار 0x00}، {0x02، 0x02، 0x02، 0x02، 0x02، مقدار 0x00، 0x02، مقدار 0x00}، {0x02، 0x02، 0x02، 0x02، 0x02، مقدار 0x00، 0x02، 0x10}، {0x02 ، 0x02، 0x02، 0x02، 0x02، مقدار 0x00، 0x12، 0x10}، {0x02، 0x02، 0x02، 0x02، 0x02، 0x10، 0x12، 0x10}، {0x02، 0x02، 0x02، 0x02، 0x12، 0x10، 0x12، 0x10 }، {0x02، 0x02، 0x02، 0x12، 0x12، 0x10، 0x12، 0x10}، {0x02، 0x02، 0x12، 0x12، 0x12، 0x10، 0x12، 0x10}، {0x02، 0x12، 0x12، 0x12، 0x12، 0x10 ، 0x12، 0x10}، {0x12، 0x12، 0x12، 0x12، 0x12، 0x10، 0x12، 0x10}، {0x12، 0x12، 0x12، 0x12، 0x12، 0x30، 0x12، 0x10}، {0x12، 0x12، 0x12، 0x12 ، 0x32، 0x30، 0x12، 0x10}، {0x12، 0x12، 0x12، 0x32، 0x32، 0x30، 0x12، 0x10}، {0x12، 0x12، 0x32، 0x32، 0x32، 0x30، 0x12، 0x10}، {0x12، 0x32 ، 0x32 ، 0x32 ، 0x32 ، 0x30 ، 0x12 ، 0x10} ، {0x32 ، 0x32 ، 0x32 ، 0x32 ، 0x32 ، 0x30 ، 0x12 ، 0x10}} ؛ hor محلی = {{0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00}، {0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x04، 0x00}، {0x00، 0x00، 0x00، 0x00، 0x00 ، 0x04، 0x04، 0x00}، {0x00، 0x00، 0x00، 0x00، 0x04، 0x04، 0x04، 0x00}، {0x00، 0x00، 0x00، 0x04، 0x04، 0x04، 0x04، 0x00}، 0x00}، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00 ، 0x04، 0x04، 0x04، 0x04، مقدار 0x00}، {مقدار 0x00، 0x04، 0x04، 0x04، 0x04، 0x04، 0x04، مقدار 0x00}، {0x04، 0x04، 0x04، 0x04، 0x04، 0x04، 0x04، مقدار 0x00}، {0x04 ، 0x04، 0x04، 0x04، 0x04، 0x04، 0x04، 0x08}، {0x04، 0x04، 0x04، 0x04، 0x04، 0x04، 0x0C، 0x08}، {0x04، 0x04، 0x04، 0x04، 0x04، 0x0C، 0x0C، 0x08 } ، {0x04، 0x04، 0x04، 0x04، 0x0C، 0x0C، 0x0C، 0x08}، {0x04، 0x04، 0x04، 0x0C، 0x0C، 0x0C، 0x0C، 0x08}، ، 0x0C، 0x08}، {0x04، 0x0C، 0x0C، 0x0C، 0x0C، 0x0C، 0x0C، 0x08}، {0x0C، 0x0C، 0x0C، 0x0C، 0x0C، 0x0C، 0x0C، 0x08}، {0x0C، 0x0C، 0x0C، 0x0C ، 0x0C، 0x0C، 0x0C، 0x48}، {0x0C، 0x0C، 0x0C، 0x0C، 0x0C، 0x0C، 0x4C، 0x48}، {0x0C، 0x0C، 0x0C، 0x0C، 0x0C، 0x4C، 0x4C، 0x48}، {0x0C، 0x0C ، 0x0C ، 0x0C، 0x4C، 0x4C، 0x4C، 0x48}، {0x0C، 0x0C، 0x0C، 0x4C، 0x4C، 0x4C، 0x4C، 0x48}، {0x0C، 0x0C، 0x4C، 0x4C، 0x4C، 0x4C، 0x4C، 0x48}، {0x0C، 0x4C ، 0x4C ، 0x4C ، 0x4C ، 0x4C ، 0x4C ، 0x48} ، {0x4C ، 0x4C ، 0x4C ، 0x4C ، 0x4C ، 0x4C ، 0x4C ، 0x48}} ؛ -چاپ (ساعت ، دقیقه ، ثانیه)
-جدول از 0 شروع می شود ، بنابراین در 1 به عنوان ثانیه فعلی [0] = صفر)
max7219.write ({animate (borTable (sec [1+ (second/secGap)] ، min [1+ (minute/minGap)] ، hor [1+ (hour/horGap)]))))
پایان -عملکرد
wifi.setmode (wifi. STATION)
wifi.sta.config (SSID ، SSID_PASSWORD) wifi.sta.autoconnect (1)
-max7219 را پیکربندی کنید
max7219 = نیاز ("max7219") max7219.setup ({numberOfModules = 1 ، slaveSelectPin = 8 ، شدت = شدت زیاد})
-برنامه اصلی
checkOnline = tmr.create ()
tmr.alarm (0 ، 180000 ، 1 ، زمان)
tmr.alarm (1 ، 1000 ، 1 ، addSecond)
tmr.alarm (2 ، 500 ، 1 ، به روز رسانی)
تابع متحرک (هنوز)
فریم های محلی = {{0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x02}، {0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x02، 0x00}، {0x00، 0x00، 0x00، 0x00، 0x00 ، 0x02، 0x00، 0x00}، {0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x01}، {0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x01، 0x00}، {0x00، 0x00، 0x00 ، 0x00، 0x00، 0x01، 0x00، 0x00}، {0x00، 0x00، 0x00، 0x00، 0x01، 0x00، 0x00، 0x00}، {0x00، 0x00، 0x00، 0x01، 0x00، 0x00، 0x00، 0x00}، {0x00 ، 0x00، 0x01، 0x00، 0x00، 0x00، 0x00، 0x00}، {0x00، 0x01، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00}، {0x01، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00، 0x00 } ، {0x00 ، 0x00 ، 0x00 ، 0x00 ، 0x00 ، 0x00 ، 0x00 ، 0x00}} ؛ halfSec = halfSec+1 اگر halfSec> = 12 سپس halfSec = 0 پایان -چاپ (halfSec) بازگشت bxorTable (فریم ها [halfSec+1] ، هنوز) پایان
مرحله هشتم: مسکن
اکنون وقت آن است که مهارت های باور نکردنی خود را به نمایش بگذارید و پروژه را اداره کنید.
یا آن را بردارید یا یک بسته آمازون را از بازیافت خارج کرده و یک خانه موقت بسازید که امروزه هنوز مورد استفاده است.
مزیت استفاده از این رویکرد این بود که هر لایه از پروژه تقریباً با ضخامت مقوا مطابقت داشت ، بنابراین یک ساندویچ را می توان روی هم چیده و به هم چسباند. نسخه ممتاز مشابه می تواند از اکریلیک استفاده کند
مرحله نهم: اظهارات پایانی
از خواندن شما متشکریم ، همانطور که بسیاری از شما می دانید مستندسازی یک پروژه به اندازه ساختن آن دشوار است. قطعات ویدئویی با من صحبت می کند که در نهایت ممکن است نور روز را ببیند.
در سالهای بین ساخت این پروژه و نگارش آن انتظار داشتم نمونه های بیشتری از نمایشگرهای LED دلخواه با استفاده از چاپ سه بعدی را ببینم ، اما کاهش نوارهای RGB بیشتر نیاز به جایگزینی را برطرف کرده است.
امیدوارم این مطالب آموزنده بوده باشد ، و لطفاً س questionsالات خود را مطرح کنید زیرا سعی می کنم جزئیات بیشتری را در مورد بخشهایی که به طور کامل رضایت ندارند ، ارائه دهم.
به سلامتی
توصیه شده:
تهیه نقشه نقشه با استفاده از Google Maps: 17 مرحله (همراه با تصاویر)
با استفاده از Google Maps یک نقشه نقشه بسازید: روز دیگر من در کتابفروشی به دنبال راهنمای خیابان در DuPage County ، IL بودم ، زیرا دوست دخترم آنجا زندگی می کند و به نقشه خیابانی دقیق نیاز دارد. متأسفانه ، تنها موردی که نزدیک داشتند یکی برای شهرستان کوک بود (مانند این
هک کردن دکمه درب خط مترو زیرزمینی لندن: 12 مرحله (همراه با تصاویر)
هک کردن دکمه درب خط مترو زیرزمینی لندن: مغازه موزه حمل و نقل لندن دکمه های درهای خارج از خط Jubilee Line را می فروشد (هر دو سمت چپ و راست موجود است). اگر در فکر انجام پروژه ای هستید که به دکمه و چراغ نشانگر نیاز دارد ، می توانید "
ساعت شبکه ESP8266 بدون هیچ گونه RTC - Nodemcu NTP ساعت بدون RTC - پروژه ساعت اینترنتی: 4 مرحله
ساعت شبکه ESP8266 بدون هیچ گونه RTC | Nodemcu NTP ساعت بدون RTC | پروژه ساعت اینترنتی: در پروژه ایجاد پروژه ساعت بدون RTC ، زمان استفاده از اینترنت با استفاده از wifi و نمایش آن بر روی صفحه نمایش st7735
کاوشگر اندازه گیری سطح آب زیرزمینی برای تنظیمات منابع کم: 4 مرحله (همراه با تصاویر)
کاوشگر اندازه گیری سطح آب های زیرزمینی برای تنظیمات منابع کم: مقدمه ما از Oxfam درخواست کردیم تا راهی ساده برای توسعه کودکان آبزی زیرزمینی در چاه های مجاور ارائه دهیم. این صفحه توسط دکتر امیر حیدری به زبان دری ترجمه شده است و ترجمه آن می تواند به زبان
اندازه گیری و نقشه آلودگی صوتی با تلفن همراه خود: 4 مرحله (همراه با تصاویر)
اندازه گیری و نقشه آلودگی صوتی با تلفن همراه خود: Nicolas Maisonneuve (Sony CSL Paris) Matthias Stevens (Vrije Universiteit Brussel / Sony CSL Paris) Luc Steels (Vrije Universiteit Brussel / Sony CSL Paris) در این & quot؛ قابل آموزش & quot؛ خواهید آموخت که چگونه می توانید از تلفن همراه مجهز به GPS خود استفاده کنید