اطلاعیه

Collapse
No announcement yet.

آموزش ارسال فایل توسط SIM900/908 به روش FTP

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    آموزش ارسال فایل توسط SIM900/908 به روش FTP

    در این اموزش میخواهیم به کمک ماژول SIM900 یا 908 دیتایی را به یک سرور مشخص به روش FTP ارسال کنیم. قبل از شروع باید گفت دلیل این کار نبودن یک مرجع مطمئن در این انجمن و شاید در کل فروم های فارسی هست . البته آموزش هایی وجود داشت اما اکثرا" یا ناقص بودند یا مطلب به خوبی انتقال داده نشده بود. به هر حال من سعی دارم با توضیح کامل و با نشان دادن مثال عملی در این مورد کمک کرده باشم تا بقیه دوستان و بخصوص کسانی که مثل من در مورد سرور و کلا" برنامه نویسی وب اطلاعاتی ندارند، زیاد وقتشون رو روی این موضوع تلف نکنند. امیدوارم مفید باشه
    برای شروع فرض رو بر این میگیریم که شما کار کردن با SIM900 رو بلد هستین و میتونید دستورات را به ماژول ارسال و از طریق کامپیوتر و برنامه هایپرترمینال و یا هر برنامه پورت سریال دیگه دریافت کنید و الان قصد دارید وارد بخش GPRS بشید . اگر در ا مورد ارتباط و atcommand ها مشکلی دارید در همین انجمن آموزش های بسیار خوبی وجود داره . برای ارتباط با میکرو هم اصولش تفاوتی نمیکنه با همون روشی که SMS ارسال میکنید دستورات رو به ماژول میفرستید و دریافت میکنید
    قبل از اینکه بخواهیم دیتایی رو ارسال کنیم باید ابتدا یک هاست داشته باشیم که بتونیم دیتا رو توی اون فضا ذخیره کنیم . اینکه هاست چی هست رو از گوگل بپرسید ولی بطور خلاصه هاست به معنی میزبان، سروری هست که یک میزان حافظه در اختیار ما قرار میده.برای این کار سرورهای مجانی زیادی وجود داره که میتونید استفاده کنید و درنهایت شما به سه چیز احتیاج دارید که در قسمت کنترل پنل اکانتتون قابل دسترسی هست :

    1- FTP SERVER
    2- FTP USER NAME
    3- FTP PASSWORD
    همونطور که گفتم از هرکدوم از این سرورهای مجانی میتونید برای اینکار استفاده کنید اما چون من از سرور GIGFA استفاده کردم برای اینکه اشکالی پیش نیاد شما هم از همین استفاده کنید و یک هاست در اختیار بگیرید. آموزش ساخت اکانت این سرور هم توی این سایت داده شده :

    http://www.sampadia.com/forum/index.php?topic=107311.0

    بخش اول:
    در ابتدا باید از فعال بودن GPRS روی سیمکارتتون مطمئن بشید که البته فکر کنم برای همه سیمکارتها بصورت پیش فرض فعال هست . سیم کارت مورد استفاده در این آموزش ایرانسل هست برای اپراتور های دیگه باید پارامترهای همون اپراتور رو وارد کنید
    بعد از ارسال دستور AT و اطمینان از برقراری ارتباط دستورات زیر را ارسال میکنیم . این دستورات برای ورود به شبکه GPRS و گرفتن IP است


    کد:
    AT+SAPBR=3,1,"APN","mtnirancel"
    respone: OK
    AT+SAPBR=1,1
    OK
    
    AT+SAPBR=2,1
    +SAPBR: 1,1,"100.66.170.64"
    OK
    خب الان ما به عنوان یک کلاینت دارای یک IP هستیم و میتونیم کار رو ادامه بدیم
    بخش دوم:
    دستورات بعدی بدین ترتیب هستند:

    کد:
    AT+FTPCID=1                                               
    OK
    معرفی سرور:
    کد:
    AT+FTPSERV="ftP.gigfa.com"                      
    OK
    معرفی اکانت (USER NAMEE )
    کد:
    AT+FTPUN="gigfa_174251283"   
    OK
    وارد کردن پسورد :
    کد:
    AT+FTPPW="235626"      
    OK
    تعیین یک نام برای فایل با پسوند TXT :
    کد:
    AT+FTPPUTNAME="simon.txt"     
    OK
    دستور روبرو آدرس دهی محلی از حافظه سرورgigfa هست که قرار هست فایل بالا در ان ایجاد شود.
    کد:
    AT+FTPPUTPATH="/htdocs/"
    OK
    AT+FTPPUT=1
    OK
    صبر مینیم تا پاسخ روبرو دریافت شود. عدد1300 ماگزیمم کارکترهای قابل ارسال هست
    کد:
    +FTPPUT:1,1,1300
    با ارسال دستور روبرو اعلام میکنید که قصد ارسال 5 کارکتر را داریم
    کد:
    AT+FTPPUT=2,5
    بعد از ارسال ، ماژول پاسخ ر.وبرو را ارسال میکند :
    کد:
    +FTPPUT:2,5
    در این زمان ماژول برای مدت زمان معینی منتظر دریافت 5 کاراکترا باقی میماند به محض دریافت 5 کاراکتر OK دریافت میشود. ( نکته: در هایپرترمینال این کاراکتر ها نمایش داده نمیشوند)
    کد:
    HELLO
    response: OK
    بعد از دریافت OK دوباره +FTPPUT:1,1,1300 دریافت میشود و میتوان دوباره دستور AT+FTPPUT=2,x را تکرار و کاراکتر های دیگری با سایز های مورد نظر ارسال کرد مطابق دستور روبرو :
    کد:
    AT+FTPPUT=2,12
    +FTPPUT:2,12
    HELLOOOWORLD
    OK
    در دستور بالا 12 کارکتر ارسال شد
    در صورتی که بخواهیم ارتباط را پایان بدیم بعد از دریافت +FTPPUT:1,1,1300 از دستور زیر استفاده میکنیم
    کد:
    AT+FTPPUT=2,0
    OK
    +FTPPUT:1,0
    حالا از طریق مرورگر خود وارد کنترل پنل خودتون بشید و در مسیر htdocs فایل مورد نظر رو پیدا کنید روی اون کلیک کنید تا دانلود بشه و باز کنید عبارت ارسالی قابل مشاهده است .

    بخش سوم
    لبست خطاها:
    در صورتی که بعد از دستورات AT+FTPPUT t و یا AT+FTPGET پاسخ های روبرو ارسال شود خطا اتفاق افتاده و باید ارتباط بررسی شود
    کد:
    +FTPGET:1,<error>
    +FTPPUT:1,<error>
    عکس:






    دریافت فایل به روش FTP

    بیشتر دستورات مطابق قبل هستند بنابراین از توضیح آنها خودداری میشود
    نکته :در زمان اتصال ماژول به سرور نباید از طریق مرورگر LOGIN شده باشید چون باعث بروز خطا میشود

    کد:
    AT+SAPBR=3,1,"APN","mtnirancel"
    OK
    AT+SAPBR=1,1
    OK
    AT+SAPBR=2,1
    OK
    AT+FTPCID=1
    OK
    AT+FTPSERV="ftP.gigfa.com"
    OK
    AT+FTPUN="gigfa_174251283"
    OK
    AT+FTPPW="235626"
    OK
    نکته :دقت شود در این حالت پسوند فایل را نباید وارد کنیم

    کد:
    AT+FTPGETNAME="simon"    
    OK
    AT+FTPGETPATH="/htdocs/"
    OK

    با ارسال دستور روبرو دیتا دریافت میشود.
    کد:
    AT+FTPGET=1
    OK
    +FTPGET:1,1
    در این زمان دیتا دریافت شده و با این دستور نمایش داده میشود
    کد:
    AT+FTPGET=2,1024
    در صورتی که در زمان کمتر از 5 ثانیه با دستور AT+FTPGET=2,1024 بالا کاراکترها خوانده نشود دوباره URC +FTPGET:1,1 دریافت میشود و این پاسخ ها 3 بار دیگر با فواصل 15 ثانیه ای تکرار میشود و در نهایت اگر دستور خواندن دیتا ارسال نشود URC +FTPGET:1,64 به منزله تایم اوت دریافت میشود
    دستور AT+FTPGET=2,1024 حداکثر کاراکتر موجود در فایل txt آدرس داده شده را میخواند برای خواند تعداد مشخصی از کاراکتر ها بجای 1024 ، تعداد لازم قرار داده میشود :
    مطابق روبرو

    کد:
    AT+FTPGET=2,5
    +FTPGET:2,5
    HELLO
    OK
    برای دریافت کاراکتر های بعدی دوباره دستور AT+FTPGET=2,7 ارسال میشود :

    کد:
    AT+FTPGET=2,5
    
    +FTPGET:2,7
    OOWORLD
    OK
    در آخر بعد از مدتی با URC +FTPGET=1,0 ارتباط قطع میشود . در این صورت باید توجه داشت که هنوز ارتباط GPRS برقرار است و IP گرفته شده معتبر می باسد و برای دریافت فایل از سرور نباید از ابتدا شروع کرد و میتوان از دستور AT+FTPCID =1 دستورات را ادامه داد

    و در پایان با دستور AT+SAPBR=0,1 میتوان ارتباط GPRS خود را خاتمه داد






    #2
    پاسخ : آموزش ارسال فایل توسط SIM900/908 به روش FTP

    :wow: :wow: :wow: :wow: :wow: :wow: :wow:
    سایمون جون خیلی گلی کارمو راه انداختی خدا خیرت بده :job:
    :):):):):):):):):):):):):):):):):):):):):):):):):) :):):):):):):):):):):):):):):):):):):):):):):):):) :):):):):):):):):):):):):):):):):):):):)

    دیدگاه


      #3
      پاسخ : آموزش ارسال فایل توسط SIM900/908 به روش FTP

      واقعا سپاس از مطالب مفیدتان.یه سوال :فرض کنیم میخواهیم میزان دما و رطوبت و وضعییت روش یا خاموش بودن چند دستگاه را توسط ماژول به یک سروری ارسال کنیم.و ازش بگیریم(ارسال و دریافت) و توی اون سرور بصورت گرافیکی میزان دما و رطوبت و وضعییت دستگاهها نشان داده شود.حالا با با وارد شدن به این سرور در فضای کاملا گرافیکی بتوان این دستگاهها رو هم وضعییتشان رو مشاهده کرد و هم کنترولشون کرد.
      حالا سوال:
      1-واسه یه همچین سرور تقریبا چقدر هزینه نیاز هست؟و فضا آیا خریداری میشه یا اجاره ای هست و باید هر از چندگاهی پول پرداخت بشه؟
      2-قضیه امنییت توی این مقوله ( سرور)به چه شکلی هست؟(منظورم اینه که یکی بیا هکش کنه و مثلا این دستگاهها رو دستکاری کنه)

      دیدگاه


        #4
        پاسخ : آموزش ارسال فایل توسط SIM900/908 به روش FTP

        ببینید این دستوراتی که اینجا اومده ارسال کاراکتر روی سرور هست. حتی ارسال یک عکس ساده دستوراتش متفاوته چه برسه به چیزی که شما میخواید که شاید اصلا بوسیله این ماژول غیر ممکن باشه ولی بدون در نظر گرفتن اینکه این کار شدنی هست یا نه باید بگم شما هر نوع دیتایی که میفرستید در نهایت حافظه ای اشغال خواهد کرد که این فضا رو سرور در اختیارتون قرار میده . پیشنهاد میکنم برای دیتاهای مهم از سرورهای مجانی استفاده نکنید چون از اونجایی گه پولی دریافت نمیکنن مسئولیتی هم برای ادامه خدمات دهی ندارند و هر زمان که صلاح بدونن فضای اختصاصی به شما رو ازتون میگیرن .

        دیدگاه


          #5
          پاسخ : آموزش ارسال فایل توسط SIM900/908 به روش FTP

          نوشته اصلی توسط سایمون
          ببینید این دستوراتی که اینجا اومده ارسال کاراکتر روی سرور هست. حتی ارسال یک عکس ساده دستوراتش متفاوته چه برسه به چیزی که شما میخواید که شاید اصلا بوسیله این ماژول غیر ممکن باشه ولی بدون در نظر گرفتن اینکه این کار شدنی هست یا نه باید بگم شما هر نوع دیتایی که میفرستید در نهایت حافظه ای اشغال خواهد کرد که این فضا رو سرور در اختیارتون قرار میده . پیشنهاد میکنم برای دیتاهای مهم از سرورهای مجانی استفاده نکنید چون از اونجایی گه پولی دریافت نمیکنن مسئولیتی هم برای ادامه خدمات دهی ندارند و هر زمان که صلاح بدونن فضای اختصاصی به شما رو ازتون میگیرن .
          اقا موقع خوندن از سرور ارور 66 یا 77 میده تو عکس نگا کردم چیزی نفهمیدم
          :):):):):):):):):):):):):):):):):):):):):):):):):) :):):):):):):):):):):):):):):):):):):):):):):):):) :):):):):):):):):):):):):):):):):):):):)

          دیدگاه


            #6
            پاسخ : آموزش ارسال فایل توسط SIM900/908 به روش FTP

            اقا موقع خوندن از سرور ارور 66 یا 77 میده تو عکس نگا کردم چیزی نفهمیدم
            فقط موقع خوندن مشکل دارید؟ یعنی ارسال انجام شده؟
            دو تا نکته هست . یکی اینکه موقع ارسال دستورات نباید از طریق دیگه ای مثلا"مرورگر login شده باشید . دوم اینکه دستورات رو زیاد با فاصله زمانی وارد نکنید . پیشنهاد میکنم دستورات رو توی برنامه notepad بنویسید و یکی یکی کپی ،پیست کنید . هر بار هم که نتونستید ارتباط برقرار کنید و ارور ریافت شد کلا" ماژول رو خاموش کنید و بعد از چند لحظه دوباره روشن و کانکت بشید . این کار درسته اصولی نیست ولی تا راه بیفتید و کارکردن باهاش دستتون بیاد میتونید استفاده کنید

            دیدگاه


              #7
              پاسخ : آموزش ارسال فایل توسط SIM900/908 به روش FTP

              لطفا کار با IP و GPRSرو هم یاد بدبد مرسی
              :):):):):):):):):):):):):):):):):):):):):):):):):) :):):):):):):):):):):):):):):):):):):):):):):):):) :):):):):):):):):):):):):):):):):):):):)

              دیدگاه


                #8
                پاسخ : آموزش ارسال فایل توسط SIM900/908 به روش FTP


                سپاس ویژه پیشکش شما، @};-

                به نظرتون آیا می شه همزمان؛ یک دستگاه جمع آوری و ارسال داده در یک مکان دور، اطلاعات خود را به این سرور بفرستد و در همان زمان، یک دستگاه دوم، جهت مشاهده، پردازش و نمایش اطلاعات در یک مکان دیگر، داده ها را از این سرور دریافت کند؟

                دیدگاه


                  #9
                  پاسخ : آموزش ارسال فایل توسط SIM900/908 به روش FTP

                  نوشته اصلی توسط Wanted.....
                  لطفا کار با IP و GPRSرو هم یاد بدبد مرسی
                  متاسفانه در این مورد تجربه ای ندارم ولی یک فایل pdf برای دانلود میزارم که بسیار کامله و هر دو روش رو توضیح داده .
                  http://s6.picofile.com/file/8245323084/sim900_ip_application_note_v1_03.pdf.html
                  زبان انگلیسیه ولی درکش زیاد سخت نیست . یه کم اطلاعات عمومی به علاوه یه بابیلون درست و حسابی مشکل زبان رو حل میکنه

                  نوشته اصلی توسط مهندس نوآور
                  سپاس ویژه پیشکش شما، @};-

                  به نظرتون آیا می شه همزمان؛ یک دستگاه جمع آوری و ارسال داده در یک مکان دور، اطلاعات خود را به این سرور بفرستد و در همان زمان، یک دستگاه دوم، جهت مشاهده، پردازش و نمایش اطلاعات در یک مکان دیگر، داده ها را از این سرور دریافت کند؟
                  در مورد سوال شما چون من توی این تاپیک سعی کردم مطالب کاملا بر اساس تجربه باشه باید بگم نمیدونم ، امتحان نکردم ولی توی تست هایی که انجام داده بودم هر زمان که بوسیله مرور گر log in میشدم (وارد شدن با ip کامپیوتر ) و همزمان با ماژول هم سعی میکردم ارتباط برقرار کنم ( اتصال با ip ماژول sim900 ) کدهای خطا دریافت میشد . بنابراین احتمالا شما با این روش نمیتونید این کارو بکنید

                  دیدگاه


                    #10
                    پاسخ : آموزش ارسال فایل توسط SIM900/908 به روش FTP

                    سلام جناب سایمون عزیز
                    این دستور رو با چه روشی باید نوشت برای SIM :
                    AT+SAPBR=3,1,"APN","mtnirancel
                    که OKبرگردونه
                    چون من با بسکام کار میکنم ERROR برمیگردونه
                    من به این صورت نوشتم
                    PRINT "AT+SAPBR=3,1","APN","mtn irancel
                    درسته ؟

                    دیدگاه


                      #11
                      پاسخ : آموزش ارسال فایل توسط SIM900/908 به روش FTP

                      نوشته اصلی توسط حسام هاشم
                      سلام جناب سایمون عزیز
                      این دستور رو با چه روشی باید نوشت برای SIM :
                      AT+SAPBR=3,1,"APN","mtnirancel
                      که OKبرگردونه
                      چون من با بسکام کار میکنم ERROR برمیگردونه
                      من به این صورت نوشتم
                      PRINT "AT+SAPBR=3,1","APN","mtn irancel
                      درسته ؟
                      خیلی وقته که دیگه بسکام کار نمیکنم . شما دستورات دیگه رو بدون اشکال ارسال میکنید؟ منظورام دستورات بخش gsm هست . اگر اون قسمت درست کار میکنه باید اشکال خود دستور print باشه . دوستانی که بسکام بهتر بلدن میتونن کمک کنن

                      دیدگاه


                        #12
                        پاسخ : آموزش ارسال فایل توسط SIM900/908 به روش FTP

                        نوشته اصلی توسط سایمون
                        خیلی وقته که دیگه بسکام کار نمیکنم . شما دستورات دیگه رو بدون اشکال ارسال میکنید؟ منظورام دستورات بخش gsm هست . اگر اون قسمت درست کار میکنه باید اشکال خود دستور print باشه . دوستانی که بسکام بهتر بلدن میتونن کمک کنن
                        سلام مجدد جناب سایمون ممنون از پیگیری شما
                        بله با دستورات دیگه مشکلی ندارم مثلا این دستورات رو میفرستم و جواب مگیرم
                        "?Print "AT+CSPN
                        '------
                        SEND SMS'
                        (Print "AT+CMGS=" ; Chr(34) ; Out_number_phone ; Chr(34
                        Waitms 200
                        (Print Out_message ; Chr(26
                        '--------
                        set date & time'
                        write date & time'
                        (Print "AT+CCLK=" ; Chr(34) ; "Status_date_and_time" ; Chr(34
                        '----------
                        با اینا مشکلی ندارم فقط ترکیب ارسال این دستور رو که شما نوشتین
                        "AT+SAPBR=3,1,"APN","mtnirance l
                        رو نمیدونم در بسکام چطوری هست
                        و به هر شکلی مینویسم ماژول error برمیگردونه
                        راستی برای همراه اول بجای "mtnirancel" چی باید بذاریم . ی جا خوندم که فرقی نمیکنه مهم نیست همین ایرانسل هم جواب میده

                        دیدگاه


                          #13
                          پاسخ : آموزش ارسال فایل توسط SIM900/908 به روش FTP


                          اتفاقا من فکر میکنم فرق میکنه

                          از فعال بودن gprs برای سیمکارتی که دارید مطمئن بشید . یعنی سیمکارتو روی یک گوشی بذارید و تمام کارهای مربوط به فعال سازی رو انجام بدید . ازجمله وارد کردن apn و ... دقت کنید باید تنظیمات اپراتور همراه اولرو وارد کنید . این تنظیمات توی سایت همراه اول موجوده .
                          وقتی تونستید به عنوان مثال با گوشی یک پیج باز کنید دگه خیالتون از این بابت راحته . سیمکارتو در بیارید و روی ماژول بزارید . دقت کنید تنظیمات اپراتور همراه اول باید وارد بشه

                          یک پیشنهاد هم بطور کلی دارم برای ماژول های gsm
                          بهتره که قبل از ارتباط با میکرو ، اول از طریق کامپیوتر با ماژول ارتباط برقرار کنید . اینکار کمک میکنه که همه دستورات ممکن در مورد این ماژول ها رو هم سریع تر ارسال کنید و یا تست کنید و هم اینکه پاسخ هایی که برمیگرده رو تحلیل کنید و اشکال کار رو برطرف کنید . موقعی که از همه چیز اطمینان پیدا کردید براحتی دستورات صحیح رو ار طریق میکرو به ماژول بفرستید - موفق باشید

                          ================================================== ================
                          یه سرچ گوگل کردم ظاهرا apn برای همراه اول mcinet هست . امتحان کنید

                          دیدگاه


                            #14
                            پاسخ : آموزش ارسال فایل توسط SIM900/908 به روش FTP

                            سلام جناب سایمون عزیز
                            من طبق فرموده شما تونستم با لپ تاپ و کلی مشقت با مبدل USBو نرم افزار REALTERM با ماژول ارتباط برقرار کنم و اما بعد
                            با ارسال دستور
                            "/AT+FTPPUTPATH="/htdocs
                            OK
                            AT+FTPPUT=1
                            OK
                            به جای این گفته شما
                            FTPPUT:1,1,1300+
                            این جواب رو دریافت میکنم
                            FTPPUT:1,77+
                            دلیلش چی میتونه باشه ؟
                            و با ارسال این دستور طبق گفته شما
                            AT+FTPPUT=2,5
                            به جای دریافت این دستور
                            FTPPUT:2,5+
                            این جواب رو دریافت میکنم
                            ERROR
                            به نظرم تا مرحله اول درست نشه نمیشه جواب گرفت

                            دیدگاه


                              #15
                              پاسخ : آموزش ارسال فایل توسط SIM900/908 به روش FTP

                              سلام مجدد جناب سایمون
                              مشکل پست قبلی از طرف من بود که با توجه به توضیجات و راهنمایی های شما و استفاده از نوت پت و کپی کردن مشکل حل شد و بدون هیچ مشکلی فایل ایجاد و ارسال میشه
                              حالا باید برم سراغ دریافت ببینیم چی میشه
                              و بعد اون کار با میکرو و بسکام
                              بازم ممنون
                              خیلی لطف و محبت کردین

                              دیدگاه

                              لطفا صبر کنید...
                              X