رفتن به مطلب
انجمن الکترولب

orhan

Members
  • تعداد ارسال ها

    41
  • تاریخ عضویت

  • آخرین بازدید

تمامی مطالب نوشته شده توسط orhan

  1. معرفی کتاب های رزبری پای

    کتاب آموزش برنامه نویسی یا اسکرچ کتاب رسمی بیناد رزبری پای لینک دانلود: https://raspberrypi.org/magpi-issues/Essentials_Scratch_v1.pdf
  2. دانلود کتاب زربری پای برای تازه کار ها کتاب رسمی بنیاد رزبری پای لینک دانلود: https://www.raspberrypi.org/magpi-issues/Beginners_Book_v1.pdf
  3. معرفی کتاب های رزبری پای

    کتاب راه اندازی GPIO رزبری پای زیرو کتاب رسمی بنیاد رزبری پای لینک دانلود: https://raspberrypi.org/magpi-issues/Essentials_GPIOZero_v1.pdf
  4. معرفی کتاب های رزبری پای

    راهنمای استفاده از دوربین رزبری پای کتاب رسمی بنیاد رزبری پای لینک دانلود: https://www.raspberrypi.org/magpi-issues/Essentials_Camera_v1.pdf
  5. معرفی کتاب های رزبری پای

    دانلود کتاب پروژه های رزبری پای کتاب رسمی بنیاد رزبری پای لینک دانلود: https://www.raspberrypi.org/magpi-issues/Projects_Book_v3.pdf
  6. معرفی کتاب های رزبری پای

    دانلود کتاب پروژه های رزبری پای کتاب رسمی بنیاد رزبری پای لینک دانلود: https://www.raspberrypi.org/magpi-issues/Projects_Book_v3.pdf
  7. معرفی کتاب های رزبری پای

    دانلود کتاب آموزشی زبان C برای رزبری پای کتاب رسمی بنیاد رزبری پای لینک دانلود: https://www.raspberrypi.org/magpi-issues/Essentials_C_v1.pdf
  8. در این پست آموزشی قصد ساخت یک منبع تغذیه آزمایشگاهی با توان مناسب را با استفاده از وسایل بازیافتی داریم. منبع تغذیه یکی از نیازهای اولیه یک آزمایشگاه الکترونیکی می باشد و با توجه به هزینه ای که باید برای خرید منابع تغذیه صرف شود ساخت یک نمونه خیلی ارزان قیمت آن منطقی است. این منبع تغذیه دارای تمامی ولتاژهای لازم برای یک الکترونیک کار می باشد. پاور کامپیوتر دارای ولتاژهای 3.3,5,12 ولت و دارای ولتاژ 12- و در پاورهای قدیمی ولتاژ 5- می باشد که ما در پروژه های الکترونیکی بیشتر به ولتاژهای 3.3,5,12 نیاز داریم. مهمترین نکته در ساخت این منبع تغذیه هزینه کم ساخت و در دسترس بودن لوازم و توان مناسب جهت انجام انواع پروژه های الکترونیکی است. وسایل مورد نیاز برای ساخت منبع تغذیه پاور کامپیوتر (ترجیحا ATX) فیش رو پنلی روکش وارنیش کلید راکر یا کلنگی ولتاژ سیم های موجود در پاور کامپیوتر برای شروع ساخت ابتدا پاور را روشن می کنیم تا از سالم بودن آن مطمئن شویم. با زدن برق به پاور کار نمی کند و این نشانه خراب بودن آن نیست. سیم سبز را یا یک سیم به یکی از زمین های مدار (سیم های مشکی) متصل می کنیم. در این لحظه باید پاور شروع به کار کند و یکی از نشانه های آن به راه افتادن فن پاور می باشد. بعد از آن پاور را خاموش می کنیم و آن را باز می کنیم. فقط به این نکته توجه شود که پاور در هنگام کار خازن های بزرگ موجود در ابتدای مدار را به مقدار زیادی شارژ میکند (تا 300 ولت) که باید از دشارژ شدن آن اطمینان حاصل کرد. سپس سیم ها را با مقدار دلخواه با سیم چین می بریم و آن ها را با توجه به ولتاژ خروجی دسته بندی می کنیم. حالا تعداد زیادی سیم از هر رنگ داریم که برای جریان دهی سیم های هم رنگ را با هم موازی میکنیم و به هم لحیم می کنیم. طبق شماتیکی که در شکل زیر ارائه شده است سیم ها را به هم و در نهایت به فیش های پنلی متصل می کنیم. همانطور که قبلا هم گفته شد برای شروع به کار پاور نیاز هست تا سیم سبز به زمین وصل شود. که در تصویر با استفاده از یک کلید این کار را انجام داده ایم. نکته ای که در اینجا باید به آن اشاره کرد وقتی پاور را به برق می زنیم پاور در حالت کلی کار نمی کند ولی در مد استندبای (سیم سبز به زمین متصل نشده) یک ولتاژ تولید می کند که آن را با 5vSB نشان می دهند. مهمترین قسمت درست کردن این منبع تغذیه اضافه کردن یک بار به دو سر ولتاژ 5 ولت می باشد. در پاورهای قدیمی در صورت نبودن این بار پاور بعد از مدتی خاموش می شود. در پاورهای جدید نیز در صورت عدم حضور این بار ولتاژهای خروجی در مقدار نامی خود خروجی نمی دهند و 5 ولت بیشتر از ولتاژ نامی و 12 ولت کمتر از ولتاژ نامی می شود. با اتصال یک مقاومت 10 اهم با توان بالا (10 وات) این بار فراهم می شود. محل قرارگیری بار در تصویر مشخص است. بر روی جعبه پاور به تعداد دلخواه در اندازه فیش های پنلی سوراخ هایی ایجاد می کنیم. سپس سیم ها را به فیش ها لحیم کرده و آنها را در جای مناسب قرار می دهیم. در نهایت منبع تغذیه ای به شکل زیر داریم که در اینجا همه ولتاژهای موجود در مدار دیده می شود. با اضافه کردن یک مدار رگولاتوری از نوع متغیر (مثل LM317) می توان یک ولتاژ متغیر نیز به این منبع اضافه کرد. برای جلوگیری از اتصالات داخلی برای قسمت های باز سیم ها از روکش وارنیش استفاده کنید. قرار دادن فیوز در این مدار اختیاری و برای حفاظت بیشتر مدارات در مقابل اضافه جریانات و اتصال کوتاه می باشد. در پاورهای Green نیازی به فیوز نیست و مدارهای حفاظتی در مقابل اضافه جریانات و شوک های الکتریکی قرار داده شده است.
  9. تعیین موقعیت مکانی با ماژول ESP8266

    اجرا: پس از کامپایل و اجرا در پنجره سریال مانیتور، مقدار دو عبارت Latitudeو Longitude طول و عرض جغرافیایی ما هستند. نمایش: برای مشاهده میتوانید از این لینک استفاده کرده ، مقادیر بالا را درآن جایگزین کرده و در مرورگر کروم یا ... لینک مذکور رو اجرا کنید https://www.google.com/maps/@Latitude,Longitude,18z 18z میزان زوم تصویر می باشد. لینک مطلب در انجمن: https://www.eca.ir/forums/thread78943.html نویسنده: digi-rx
  10. تا حالا برای بدست آوردن موقعیت مکانی باید یا از ماژولهای gps یا gsm استغاده می کردیم، یا از طریقی (با سیم و یا بیسیم) اطلاعات رو از گوشی و تبلت و لپتاپ می گرفتیم. ولی آیا راهی نیست که بتونیم بدون نیاز به موارد بالا مستقیم موقعیت رو بدست بیاریم؟؟ خوشبختانه چرا هست هممون از سرویسهای google map و مشتقاتش استفاده کردیم و راجبش اطلاعات داریم. این سرویس از چند سال پیش امکاناتی رو اضافه کرده که سایتها و اپلیکیشن ها می توانند از طریق api گوگل، باهاش کار کنند و موقعیت مکانی مخاطبان سایت و برنامه را بدست بیاورند (البته با اجازه خود کاربر) حالا چطوری؟؟؟ سیستم تخمین موقعیت بر اساس آنتنهای موبایل اطراف میباشد.. این سیستم جهت تخمین موقعیت نیازی به سیستم ماهواره ای GPS ندارد و برای مواردی کاربرد خواهد داشت که خودرو داخل تونل یا پارکینگهای مسقف قرار دارد و به دلیل مسقف بودن محل امکان موقعیت یابی ماهواره ای GPS وجود نداشته باشد.. اما روش کار این سیستم چگونه است؟ دکلهای مخابراتی که با نام BTS یا Base Transceiver Station شناخته میشوند را همگی دیده ایم.. هر BTS دارای مشخصات منحصر بفردی در دنیا میباشد.. این مشخصات شامل موارد زیر میباشند : MCC یا Mobile Country Code که نشان دهنده کد کشور میباشد…MNC یا Mobile Network Code که کد اپراتور سرویس دهنده میباشد… LAC یا Location Area Code نشان دهنده کد منطقه میباشد و CellID که نشاندهنده کد آن دکل BTS در منطقه میباشد.. سیستم دزدگیر و ردیاب ماهواره ای خودرو با بدست آوردن این مشخصات از روی نزدکترین دکلهای اطراف که دارای سیگنال قویتری هستند و میانگین گیری کردن از موقعیت آنها نزدیکترین موقعیت را تخمین میزند..همانطور که گفته شد این تخمین نیازی به سیستم GPS نداشته و حتی در مکانهای مسقف نیز محدوده مکانی خودرو را تخمین میزند. api چیست؟ مختصرا بخوام بگم یسری دستورات و روشی هست که (در اینجا) گوگل مشخص کرده که شما با این دستورات بسادگی میتونید درخواستهاتون رو بفرستید بهش وجوابها رو هم بگیرید. گرفتن API KEY: میخوایم با سرویس google geolocation کار کنیم. در ابتدا نیاز به یک api key مخصوص به خودمون داریم که پس از اینکه وارد اکانت گوگل خود شدید، میتوانید از طریق این لینک اون رو برای خودتان بسازید. البته برای باز شدن صفحه به دلیل اینکه این سرویس مثل تقریبا همه سرویسهای گوگل برای آیپی ایران بسته است نیازمند راهی جهت عبور از آن می باشید.به هر نحوی که خود می توانید وارد صفحه ذکر شده شوید و روی get a key کلیک کنید: مرحله بعدش اگر قبلا پروژه ای ساخته باشید ازتون میخواد که یکی از اونها رو از تو لیست انتخاب کنید و یا اگر دفعه اول باشه باید یه اسم برای پروژتون انتخاب کنید: حال کلید داده شده را کپی و در یک جای امن ذخیره کنید. قبل از ادامه مطلب پیشنهاد میکنم دوستان یسری اطلاعات درمورد انواع ارتباط با اینترنت و پروتکل های ارتباطیش و انواع درخواستها و … کسب کنند که برای کار با ماژولهای esp شدیدا مورد نیاز است. یکی از این اطلاعات هم شناخت و کار با فرمت json می باشد که اگه بتونید خوب باهاش کار کنید، پروژه های مشابه این پروژه براحتی میتونید راه اندازی کنید و با api مربوطه ارتباط برقرار کنید. پروژه هایی مثل دستورات صدا و کلامی ، اطلاعات آب وهوا و دما ، ساعت ntp و… برای راه اندازی و برنامه نویسی esp8266 از آردوینواستفاده شده است. برنامه نویسی: برنامش چیز خاصی نداره فقط باید درخواست رو تحت همون فرمت json ارسال و اطلاعات رو هم با همون فرمت دریافت کنید. خبر خوب اینکه یه دوست عزیزی این کاررو هم برامون انجام داده و کارمون رو راحت و آسون کرده در صفحه گیت هاب ایشون دو فایل آردوینو هست: یکی خروجی رو روی oled نشون میده و دیگری در پنجره سریال مانیتور. چون ما معمولا طول وعرض جغرافیایی بدست آورده را نه برای نمایش بلکه برای ارسال یا دیدن در نقشه و … نیاز دارم پس من از فایل Geolocation_without_display.ino استفاده کردم. https://github.com/techiesms/Geolocation فقط موارد زیررا بایدمتناسب با شرایط خودتان در فایل تغییر بدهید: – myssid و mypass » نام و پسورد مودم برای اتصال به اینترنت ماژولesp – homeMobileCountryCode همان mcc – key همان api key که از گوگل گرفتیم – homeMobileNetworkCode» همان mnc mcc و mnc رو میتونید از یکی ازاین دو لینک بگیرید: این لینک یا این لینک که mccبرای ایران 432 هست و mnc بستگی به اپراتور اینترنتتون داره. برنامه تعیین موقعیت مکانی با ماژول ESP8266: This code is provided by techiesms *********************************************************************/ [URL=https://www.eca.ir/forums/usertag.php?do=list&action=hash&hash=include]#include[/URL] <ESP8266HTTPClient.h> [URL=https://www.eca.ir/forums/usertag.php?do=list&action=hash&hash=include]#include[/URL] <ArduinoJson.h> [URL=https://www.eca.ir/forums/usertag.php?do=list&action=hash&hash=include]#include[/URL] "ESP8266WiFi.h" char myssid[] = "SSID" // your network SSID (name) char mypass[] = "PASS" // your network password //Credentials for Google GeoLocation API... const char* Host = "www.googleapis.com"; String thisPage = "/geolocation/v1/geolocate?key="; String key = "YOUR_API_KEY"; int status = WL_IDLE_STATUS; String jsonString = "{\n"; double latitude = 0.0; double longitude = 0.0; double accuracy = 0.0; int more_text = 1; // set to 1 for more debug output void setup() { Serial.begin(115200); Serial.println("Start"); // Set WiFi to station mode and disconnect from an AP if it was previously connected WiFi.mode(WIFI_STA); WiFi.disconnect(); delay(100); Serial.println("Setup done"); // We start by connecting to a WiFi network Serial.print("Connecting to "); Serial.println(myssid); WiFi.begin(myssid, mypass); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println("."); } void loop() { char bssid[6]; DynamicJsonBuffer jsonBuffer; Serial.println("scan start"); // WiFi.scanNetworks will return the number of networks found int n = WiFi.scanNetworks(); Serial.println("scan done"); if (n == 0) Serial.println("no networks found"); else { Serial.print(n); Serial.println(" networks found..."); if (more_text) { // Print out the formatted json... Serial.println("{"); Serial.println("\"homeMobileCountryCode\": 432,"); // this is a real UK MCC Serial.println("\"homeMobileNetworkCode\": 19,"); // and a real UK MNC Serial.println("\"radioType\": \"gsm\","); // for gsm Serial.println("\"carrier\": \"Vodafone\","); // associated with Vodafone //Serial.println("\"cellTowers\": ["); // I'm not reporting any cell towers //Serial.println("],"); Serial.println("\"wifiAccessPoints\": ["); for (int i = 0; i < n; ++i) { Serial.println("{"); Serial.print("\"macAddress\" : \""); Serial.print(WiFi.BSSIDstr(i)); Serial.println("\","); Serial.print("\"signalStrength\": "); Serial.println(WiFi.RSSI(i)); if (i < n - 1) { Serial.println("},"); } else { Serial.println("}"); } } Serial.println("]"); Serial.println("}"); } Serial.println(" "); } // now build the jsonString... jsonString = "{\n"; jsonString += "\"homeMobileCountryCode\": 432,\n"; // this is a real UK MCC last 234 jsonString += "\"homeMobileNetworkCode\": 19,\n"; // and a real UK MNC lasr 27 jsonString += "\"radioType\": \"gsm\",\n"; // for gsm jsonString += "\"carrier\": \"Vodafone\",\n"; // associated with Vodafone jsonString += "\"wifiAccessPoints\": [\n"; for (int j = 0; j < n; ++j) { jsonString += "{\n"; jsonString += "\"macAddress\" : \""; jsonString += (WiFi.BSSIDstr(j)); jsonString += "\",\n"; jsonString += "\"signalStrength\": "; jsonString += WiFi.RSSI(j); jsonString += "\n"; if (j < n - 1) { jsonString += "},\n"; } else { jsonString += "}\n"; } } jsonString += ("]\n"); jsonString += ("}\n"); //-------------------------------------------------------------------- Serial.println(""); WiFiClientSecure client; //Connect to the client and make the api call Serial.print("Requesting URL: "); Serial.println("https://" + (String)Host + thisPage + "AIzaSyCYNXIYINPmTNIdusMjJloS4_BXSOff1_g"); Serial.println(" "); if (client.connect(Host, 443)) { Serial.println("Connected"); client.println("POST " + thisPage + key + " HTTP/1.1"); client.println("Host: " + (String)Host); client.println("Connection: close"); client.println("Content-Type: application/json"); client.println("User-Agent: Arduino/1.0"); client.print("Content-Length: "); client.println(jsonString.length()); client.println(); client.print(jsonString); delay(500); } //Read and parse all the lines of the reply from server while (client.available()) { String line = client.readStringUntil('\r'); if (more_text) { Serial.print(line); } JsonObject& root = jsonBuffer.parseObject(line); if (root.success()) { latitude = root["location"]["lat"]; longitude = root["location"]["lng"]; accuracy = root["accuracy"]; } } Serial.println("closing connection"); Serial.println(); client.stop(); Serial.print("Latitude = "); Serial.println(latitude, 6); Serial.print("Longitude = "); Serial.println(longitude, 6); Serial.print("Accuracy = "); Serial.println(accuracy); } https://www.eca.ir/forums/thread78943.html
  11. معرفی موتور گیربکس های تولید ZHENGKE

    شرکت ZhengeMotor تولید کننده تخصصی موتورهای AC/DC، موتورگیربکس و کالاهایی از این قبیل می باشد. در این مقاله سعی داریم انواع موتورگیربکس های مدل ZGA12 ، ZGA25 ، ZGA28 ، ZWL را مورد بررسی قرار بدهیم. موتور گیربکس خانواده‌ ZGA25 این موتور گیربکس با ولتاژ نامی 12 ولت، قابلیت کارکرد با ولتاژ 6 الی 24 ولت را دارا می‌باشد و توانی معادل 0.5 الی 2 وات ارائه می دهد. این موتور دارای گیربکس فلزی، شفت آن در مرکز و فلنج آن دایره ای شکل است. این موتور گیربکس که یکی از مورد پسندترین موتورهای موجود در بازار است، دارای قطر 25 میلیمتر، طول 30 میلیمتر و طول شفت 10 میلیمتر می باشد و از نظر قدرت در رده موتورهای کوچک بوده و در بسیاری از رباتهای با قدرت کم یا متوسط می توان از آن استفاده کرد. Zhengke نام برند ZGA25RP مدل چین ساخت 124 گرم وزن 63 میلیمتر طول 25 میلیمتر قطر 6 الی 24 ولت ولتاژ قابل تحمل 12 ولت ولتاژ کاری 0.4 آمپر جریان بدون بار 0.5 الی 2 وات توان 12 میلیمتر طول شافت شفت مرکز / فلنج دایره ای سایر 4 میلیمتر قطر شافت ابعاد موتور گیربکس: موتور گیربکس خانواده‌ ZGA28 موتور گیربکسی از خانواده‌ی ZGA28 با ولتاژ نامی 12 ولت که قابلیت کارکرد با ولتاژ 6 الی 24 ولت را دارا می‌باشد و توانی معادل 0.5 الی 5 وات را ارائه می دهد. این موتور که دارای گیربکس فلزی است شفت آن در مرکز و فلنج آن دایره است. این موتور گیربکس یکی از پرکارترین موتورهای موجود در بازار و صنعت می باشد. از نظر قدرت در رده موتورهای متوسط می باشد و در بسیاری از رباتهای با قدرت زیاد یا متوسط می توان از این موتور گیربکس استفاده کرد. Zhengke نام برند ZGA28RO مدل چین ساخت فلزی جنس بدنه 28 میلیمتر قطر 6 الی 24 ولت ولتاژ قابل تحمل 12 ولت ولتاژ کاری 0.4 آمپر جریان بدون بار 5 وات توان 12 میلیمتر طول شافت 6 میلیمتر قطر شافت شفت مرکز / فلنج دایره ای سایر ابعاد موتور گیربکس: موتور گیربکس خانواده‌ ZGA12 این موتور دارای گیربکس فلزی با وزن کم و گشتاور مناسب، ایده‌آل برای رباتهای کوچک نظیر مسیریاب ، امدادگر ، مازخط ، میکروماوس و… میباشد. ویژگی خاص ( از نظر ولتاژ و جریان ) سبک ، کم حجم و ظریف ( مینیاتوری ) مناسب برای ربات های کوچک جریان(A) گشتاور(kg.cm) سرعت(rpm) بدون بار (no load) ولتاژ (v) نسبت (Ratio) سرعت ((rpm 0.014 0. 2 30 35 6-12 1.298 0.11 0.15 50 60 6-12 1.150 0.21 0.4 58 70 6-12 1.298 0.21 0.5 60 80 6-12 1.298 0.21 0.6 100 120 6-12 1.100 0.095 0.05 180 200 6-12 1.50 0.085 0.04 300 330 6-12 1.30 0.1 0.05 350 400 6-12 1.50 ابعاد موتورگیربکس: موتور گیربکس خانواده‌ ZWL این موتور با ولتاژ نامی 12 ولت است که دارای گیربکس فلزی می باشد . ویژگی های اصلی این موتور گیربکس سرعت پایین ، سر و صدای کم و قیمت اقتصادی آن است . این گیربکس توسط ژنگ در سال 2016 باز طراحی شده و تمام چرخ دنده های داخل آن به فلزی تغییر یافته و سر و صدای کارکردن آن کاهش پیدا کرده است . Voltage(VDC) 5V 5V 12V 12V Motor Model 31P 31P 80P 80P Reduction Ratio 1650 5300 180 330 No-Load Speed(Rpm) 2.0 0.6 35.0 24.0 Rated Speed(Rpm) 1.2 0.4 29.0 21.0 Rated Torque(Kg.cm) 12.00 40.00 5.00 6.00 Rated Current(Amp) 0.60 0.60 1.10 1.10 Max.Momentary Torque(Kg.cm) 15.00 50.00 6.25 7.50 ابعاد موتورگیربکس:
  12. آیا شارژ باطری خودروی شما کم است؟

    آیا شارژ باطری خودروی شما کم است؟ آیا باطری خودروی شما قدرت کافی برای استارت‌ زدن در هوای سرد را دارد؟ تنها راه برای پی‌ بردن به این موضوع که آیا باطری شما کاملا شارژ است یا نه، سنجش وضعیت شارژ باطری توسط دستگاه سنجش ولتاژ یا ولت‌ متر است. می‌ توانید از یک ولت‌ متر آنالوگ یا دیجیتال استفاده کنید اما خواندن ولتاژ در نمونه‌ های دیجیتال راحت‌ تر است و عدد دقیق‌ تری را به شما نشان می‌ دهد. برای سنجش ولتاژ باطری اول سوییچ را کامل ببندید و تمام چراغ‌ های خودرو را خاموش کنید. برای بررسی وضعیت شارژ باطری کابل مثبت یا قرمز رنگ ولت‌ متر را به قطب مثبت باطری متصل کنید. قطب مثبت باطری با علامت + و کابلی که به قطب مثبت باطری متصل شده معمولا با رنگ قرمز مشخص شده است. کابل منفی یا سیاه‌رنگ ولت‌ متر را به قطب منفی باطری متصل کنید. قطب منفی باطری با علامت - و کابلی که به قطب منفی باطری متصل شده معمولا با رنگ سیاه مشخص شده است. به عددی که ولت‌ متر نشان می‌دهد توجه کنید و به جدول زیر مراجعه کنید: ولتاژ باطری ............ وضعیت شارژ 12.66 ولت ............ 100 درصد 12.45 ولت ............ 75 درصد 12.24 ولت ............ 50 درصد 12.06 ولت ............ 25 درصد 11.89 ولت ............ 0 درصد توجه: ولتاژ های جدول بالا مربوط به دمای 26 درجه سانتی‌گراد است. ولتاژ باطری به ازای هر 12 درجه سانتی‌گراد کاهش دما حدود 0.01 ولت افت می‌ کند. در دمای منفی 1 درجه سانتی‌گراد یک باطری با شارژ کامل ولتاژی معادل 12.588 خواهد داشت و در دمای منفی 17 درجه سانتی‌گراد ولتاژ آن 12.516 ولت خواهد بود. بنابراین طبق جدول بالا یک باطری با ولتاژ 12.29 ولت حدود 50 درصد کمبود شارژ دارد و باید شارژ شود. اگر ولتاژ باطری خودروی شما کمتر از 12.45 ولت (75 درصد شارژ) است به این معناست که شارژ آن کم است و باید شارژ شود. می‌ توان با اتصال یک شارژر باطری قابل‌حمل به باطری خودرو یا رانندگی با خودرو به مدت 15 تا 20 دقیقه با سرعت 65 کیلومتر در ساعت یا بالاتر آن را شارژ کرد. برای اینکه باطری‌ های اسید سربی بهترین عملکرد و بیشترین عمر را داشته باشند باید همیشه 75 درصد یا بالاتر شارژ داشته باشند. اگر شارژ این نوع باطری خالی شود و طی چند روز دوباره تا 75 درصد یا بیشتر شارژ نشود ممکن است آسیب دائمی ببیند. سولفاته‌شدن از شارژشدن کامل خانه‌ها یا صفحات سلولی درون باطری جلوگیری می‌ کند. این مشکل به مرور زمان باعث کاهش عمر و عملکرد باطری می‌ شود.
  13. JSON چیست ؟ و در کجا کاربرد دارد

    و یک تعریف دیگه از سایت دیگه قالب JSON و ساختار آن جی‌سن (JSON) ساختاری (فرمت) با استاندارد باز است که در انتقال اطلاعات و داده‌ها (مثلاً بین مرورگر و سایت) استفاده شده و برای انسان قابل خواندن است. JSON چیست؟ جی‌سن (JSON) که برخی جی‌سان و جی‌سون نیز تلفظ می‌کنند، مخفف کلمه JavaScript Object Notation بوده و یک استاندارد باز است که با ساختاری خوانا برای انسان و هم ماشین، می‌توان اطلاعات و داده‌های مختلف از جمله داده‌های یک دیتابیس را با استفاده از آن، بین عوامل مختلف مثلاً مرورگر کاربر و یک سایت منتقل کرد یا در فضای ذخیره سازی‌ای، آن را ذخیره نمود. یکی از مهمترین کاربردهای JSON، استفاده از آن در تکنولوژی آزاکس (AJAX) است. آژاکس تکنولوژی‌ای است که با استفاده از زبان جاوا اسکریپت، درخواست‌هایی به سرور وبسایت ارسال می‌کند و بدون نیاز به تغییر آدرس صفحه یا بارگذاری مجدد آن، تغییراتی را در صفحه ایجاد می‌کند. به این ترتیب صفحاتی پویا یا داینامیک خواهیم داشت. درست است که در آژاکس همانطور که از نامش (Asynchronous JavaScript and XML) هم پیداست، اطلاعات رد و بدل شده در قالب XML انجام می‌پذیرد اما از زمان معرفی JSON، قالب مورد استفاده از XML به JSON تغییر داده شد. به دلیل مزایای جی‌سن نسبت به ایکس‌ام‌ال، JSON نه تنها در جاوا اسکریپت بلکه در سایر زبان‌ها نیز استفاده می‌شود. یعنی به عبارت دیگر JSON یک محتوای متنی است که به زبانی وابسته نیست و تقریباً در اکثر زبان‌ها از جمله PHP، C#، C++، C، ASP.NET، Java و بسیاری از زبان‌های دیگر قابل تولید و تجزیه سازی و همینطور برای انسان به راحتی قابل نوشتن و خواندن است. ساختار JSON ساختار جی‌سن بسیار ساده است و همین سادگی یکی از دلایل برتری آن نسبت به ایکس‌ام‌ال است چون با این ساختار، خود کاربر و انسان نیز می‌تواند به راحتی محتوا را بخواند. قواعد کلی یک نوشته بصورت JSON به این شکل است: محتوای داخل JSON با آکولاد باز } شروع شده و با آکولاد بسته { تمام می‌شوند. این بلاک به عنوان آبجکت مادر نیز شناخته می‌شود. { آبجکت‌ها، آرایه‌ها و مقادیر } آبجکت‌ها شیء یا آبجکت (Object) در JSON شامل مجموعه‌ای نامرتب از داده‌ها (نام/مقدار) است که دارای یک نام رشته‌ای (داخل " ") به عنوان کلید است. کلید آبجکت‌ها بهتر است منحصر به فرد باشد تا به راحتی قابل تمایز باشند. آبجکت‌ها با آکولاد باز } شروع شده و با آکولاد بسته { تمام می‌شوند. کلید با کاراکتر دو نقطه : از آکولاد باز جدا می‌شود. داده‌های داخل آبجکت باید با کاراکتر کاما ( , ) از یکدیگر جدا شوند. آبجکت یا شیء در JSON عکس خام: json.org برای مثال: { "Me": { "fname": "Amirreza", "lname": "Nasiri", "birth": 1996 } } در مثال بالا ما یک آبجکت با نام کلید Me داریم که دارای خصوصیاتی با مقادیر fname برابر Amirreza و lname برابر Nasiri و birth برابر ۱۹۹۶ است. آرایه‌ها آرایه یا Array در JSON می‌تواند شامل چندین مقدار (از یک نوع ارزش) باشد. آرایه‌ها معمولاً دارای یک نام رشته‌ای (داخل " ") به عنوان کلید است. کلید آرایه‌ها بهتر است منحصر به فرد باشد تا به راحتی قابل تمایز باشند. آرایه‌ها با براکت باز ] شروع شده و با براکت بسته [ تمام می‌شوند. کلید با کاراکتر دو نقطه : از براکت باز جدا می‌شود. آبجکت‌های داخل آرایه باید با کاراکتر کاما ( , ) از یکدیگر جدا شوند. آرایه در JSON عکس خام: json.org برای مثال: آرایه‌ای از آبجکت‌ها (ارزش) { "Persons": [ {"fname": "Amirreza", "lname": "Nasiri"}, {"fname": "Alireza", "lname": "Nasiri"}, {"fname": "Navid", "lname": "Mousavi"} ] } در این مثال ما یک آرایه به نام Persons داریم که دارای سه آبجکت است. هر آبجکت نیز دو جفت نام/مقدار دارد. نمونه دیگر: آرایه‌ای از یک نوع مقادیر (ارزش) { "Ages": [ ۲۵, ۱۲, ۶۵, ۱۶ ] } نکته: آرایه فقط می‌تواند شامل یک نوع ارزش باشد. برای مثال یا همه آیتم‌هایش آبجکت باشد یا رشته یا ... . ارزش‌ها ارزش یا Value شامل موارد زیر است: رشته‌ها اعداد آبجکتی دیگر آرایه‌ای دیگر مقدار بولی - درست یا غلط (True / False) مقدار تهی (Null) عنوان ارزش (نوع متغیر) در JSON عکس خام: json.org رشته‌ها رشته یا String همان عبارت‌هایی متشکل از حروف در کاراکتر ست Unicode (یونی کد) هستند. مثلاً یک کلمه. اگر از رشته‌ها در یک آبجکت استفاده کنیم، چون ساختار آبجکت به صورت نام/مقدار است، باید یک نام و یک مقدار برای آن در نظر بگیریم. مانند: { "name": "Amirreza", "city": "Tabriz", "country": "Iran" } توجه کنید که هم نام و هم مقدار چون هر دو از نوع String هستند، باید داخل دو علامت دابل کوتیشن " " قرار دهیم. نام با استفاده از یک کاراکتر دو نقطه : در خارج از دابل کوتیشن، از مقدار جدا می‌شود. حال اگر آرایه‌ای از فقط نوع رشته داشته باشیم، می‌توانیم فقط مقادیر را در آرایه بنویسیم. مانند: [ "Amirreza", "Alireza", "Navid" ] نکته: برخی از کاراکترها باید با بک اسلش اسکیپ شوند. در جدول زیر می‌توانید این مقادیر را ببینید: برای نوشتن کاراکتر به این صورت عمل می‌کنیم " \" \ \\ / \/ بک‌اسپیس \b خط جدید \n هگزادسیمال \u 4-HexDigits اعداد عدد یا Number در JSON مانند رشته یا String در بند بالاست با این تفاوت که برای نوشتن مقادیر عددی، نیازی به دابل کوتیشن " " نداریم. به نمونه‌های زیر توجه کنید: چندین عدد در یک آبجکت: { "age": 18, "birth": 1996, "stature": 185 } مقادیری از نوع ارزش عددی در آرایه: [ ۱۸, ۲۱, ۱۹ ] نکته: اعداد می‌تواند شامل اعداد اعشاری، صحیح و E مثبت و منفی در ریاضیات باشد. مقدار بولی مقدار بولین (Boolean) می‌تواند دو حالت درست (True) و نادرست (False) را در خود نگه دارد. در JSON مانند رشته یا عدد در بند بالاست با این تفاوت که برای نوشتن مقادیر عددی، نیازی به دابل کوتیشن " " نداریم. به نمونه‌های زیر توجه کنید: چندین مقدار بولی در یک آبجکت: { "isAlive": true, "isSoccerPlayer": false, "likesGame": true } مقادیری از نوع ارزش ترو / فُلس در آرایه: [ true, false, true ] مقدار تهی تهی یا Null یعنی مقدار متغیر ما چیزی ندارد. مثل مقدار بولی در بند بالا پیاده سازی می‌شود. به مثال‌های زیر توجه کنید: مقدار تهی در یک آبجکت: { "name": "Amirreza", "lname": "Nasiri", "ifAddress": null } مقادیری از نوع ارزش تهی در آرایه: [ null, null, null ] منبع این آموزش: http://bytegate.ir/فرمت-json-چیست؟/
  14. سرنام واژگان JavaScript Object Notation یک استاندارد سبک، باز ، متنی و خوانا برای انسان جهت انتقال داده و جایگزینی برای xml است. قراردادهای مورد استفاده ی JSON برای تمامی برنامه نویسان از جمله برنامه نویس C، C++، Java، Python، Perl شناخته شده است که به شرح زیر می باشد: JSON مخفف JavaScript Object Notation است. فرمت آن برای اولین بار توسط Douglas Crockford معرفی شد. برای انسان خوانا بوده و ویژه ی انتقال داده طراحی شده است. از زبان اسکریپت نویسی JavaScript مشتق شده است. پسوند فایل های با فرمت جی سن .json می باشد. Media type این فرمت انتقال داده application/json است. شناسه ی متحدالشکل نوع (UTI) آن public.json است. موارد استفاده ی JSON به هنگام نوشتن برنامه های تحت وب مبتنی بر جاوا اسکریپت که افزونه هایی برای مرورگر و وب سایت ها را شامل می شوند بکار می رود. برای serialize کردن و انتقال داده های ساخت یافته از طریق اتصال شبکه بکار می رود. عمدتا برای انتقال داده بین سرور و برنامه های تحت وب بکار می رود. Web service ها و API ها از فرمت JSON برای ارائه ی داده های public بهره می گیرند. تمامی زبان های برنامه نویسی روز از آن پشتیبانی می کنند. ویژگی های JSON خواندن و نوشتن در آن آسان است. یک فرمت متنی تبادل داده سبک و کم حجم است. با اینکه از زبان JavaScript مشتق شده، از این زبان کاملا مستقل است و مفسر (parser) آن برای تمامی زبان ها موجود می باشد. نمونه ی ساده از JSON مثال زیر نحوه ی استفاده از JSON را برای ذخیره ی اطلاعات مربوط به مجموعه ای از کتاب ها بر اساس موضوع و ویرایش هر یک، نمایش می دهد: { "book": [ { "id":"01", "language": "Java", "edition": "third", "author": "Herbert Schildt" }, { "id":"07", "language": "C++", "edition": "second", "author": "E.Balagurusamy" } ] } نمونه ی دیگری را در زیر مشاهده می کنید. این کد را با پسوند json.htm ذخیره می کنیم: language = "javascript" > var object1 = { "language" : "Java", "author" : "herbert schildt" }; document.write(" JSON with JavaScript example "); document.write(" "); document.write(" Language = " + object1.language+" "); document.write(" Author = " + object1.author+" "); var object2 = { "language" : "C++", "author" : "E-Balagurusamy" }; document.write(" "); document.write(" Language = " + object2.language+" "); document.write(" Author = " + object2.author+" "); document.write(" "); document.write(object2.language + " programming language can be studied " + "from book written by " + object2.author); document.write(""); حال با مرورگر IE یا هر مرورگر دیگری که JavaScript در آن فعال سازی شده، فایل json.htm را باز می کنیم. نتیجه ی زیر را بدست می دهد: منبع http://www.tahlildadeh.com/ArticleDetails/JSON-چیست
  15. راه اندازی ماژول RFID RC522 با آردوینو

    این نوع پست ها رو ادامه بدید ممنون
  16. ساخت دکمه Reset برای رزبری پای

    ممنون از پستتون عالی بود
×