اطلاعیه

Collapse
No announcement yet.

[پروژه] پروژه کامل ریموت 4 کاناله رادیویی ASK لرنینگ

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

    پاسخ : پروژه کامل ریموت 4 کاناله رادیویی ASK لرنینگ

    نوشته اصلی توسط Amin_Ahangar
    سلام به همه
    و با تشکر از آقای اسدی
    کدوم لینکو دانلوذ کنم
    منکه نتونستم پیداش کنم
    میشه لطف کنین & لینکشو بزارین
    ممنون
    دوست من توی همون پست اول میتونستی پیدا کنی ولی من دوباره میدم

    http://s1.picofile.com/file/6833796776/REMOUT_T2313.zip.html

    به همین سادگی :nice:
    تجربه معلم خشنی هست اول امتحان میگیره بعد درس میده !!!
    به دلیل برخی مشکلات بوجود اماده دیگه امکان ادامه فعالت در این انجمن مقدور نیست.

    دیدگاه


      پاسخ : پروژه کامل ریموت 4 کاناله رادیویی ASK لرنینگ

      با سلام خدمت آقای اسدی
      به خاطر آموزشی که گذاشتید خیلی ممنونم.من طبق عکس ها پیش رفتم ولی در نهایت پرینتی که بدست اومد خیلی کوچک بود؟نمیدونم چرا ؟؟؟؟؟؟؟
      به نظرتون چرا اینطوری شد؟
      در ضمن شما واسه قسمت bottoum رو برعکس نکردید؟چرا ؟

      دیدگاه


        پاسخ : پروژه کامل ریموت 4 کاناله رادیویی ASK لرنینگ

        نوشته اصلی توسط mohandes_elc90
        با سلام خدمت آقای اسدی
        به خاطر آموزشی که گذاشتید خیلی ممنونم.من طبق عکس ها پیش رفتم ولی در نهایت پرینتی که بدست اومد خیلی کوچک بود؟نمیدونم چرا ؟؟؟؟؟؟؟
        به نظرتون چرا اینطوری شد؟
        در ضمن شما واسه قسمت bottoum رو برعکس نکردید؟چرا ؟
        با سلام
        به خدا دیگه خسته شدم بس که همه این موارد رو توضیح دادم و شما دوستان به جای اینکه مطلب رو به دقت بخونید و توجهی بهش بکنید فقط سوالهای تکراری پرسیدید
        دوست من شما قسمت 3 این عکس رو باید مقدار 1 بهش بدین نه عدد دیگه ای در غیر این صورت احتمال داره نوع کاغذ یا پرینتر رو درست انتخاب نکرده باشید



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

        به همین سادگی :nice:
        تجربه معلم خشنی هست اول امتحان میگیره بعد درس میده !!!
        به دلیل برخی مشکلات بوجود اماده دیگه امکان ادامه فعالت در این انجمن مقدور نیست.

        دیدگاه


          پاسخ : پروژه کامل ریموت 4 کاناله رادیویی ASK لرنینگ

          دوست عزیز حالا شما چرا ناراحت میشید ؟ :rolleyes:
          ما هم همون کارایی رو که شما گفتید کردیم .ولی نمیدونم چرا وقتی ازش پرینت گرفتم کوچک شد؟آخه من که توی خونه پرینتر نداشتم.با پرینتر مجازی تبدیل کردم به pdf و بردم بیرون پرینت گرفتم.
          تا زمانی هم که روی کاغذ پرینت نشده بود اصلا مشخص نبود که سایزش کوچکه!!!
          یه سوال دیگه اون دیود های کنار رله ها چه نوع دیودی هستند؟
          با تشکر

          دیدگاه


            پاسخ : پروژه کامل ریموت 4 کاناله رادیویی ASK لرنینگ

            نوشته اصلی توسط mohandes_elc90
            دوست عزیز حالا شما چرا ناراحت میشید ؟ :rolleyes:
            ما هم همون کارایی رو که شما گفتید کردیم .ولی نمیدونم چرا وقتی ازش پرینت گرفتم کوچک شد؟آخه من که توی خونه پرینتر نداشتم.با پرینتر مجازی تبدیل کردم به pdf و بردم بیرون پرینت گرفتم.
            تا زمانی هم که روی کاغذ پرینت نشده بود اصلا مشخص نبود که سایزش کوچکه!!!
            یه سوال دیگه اون دیود های کنار رله ها چه نوع دیودی هستند؟
            با تشکر
            با سلام
            در صورت تبدیل کردن به pdf امکان پرینت در اندازه دقیق وجود ندارد
            1N4007 or 1N4148

            به همین سادگی:nice:
            تجربه معلم خشنی هست اول امتحان میگیره بعد درس میده !!!
            به دلیل برخی مشکلات بوجود اماده دیگه امکان ادامه فعالت در این انجمن مقدور نیست.

            دیدگاه


              پاسخ : پروژه کامل ریموت 4 کاناله رادیویی ASK لرنینگ

              نوشته اصلی توسط POLESTAR
              با سلام
              نه دوست من در pcb مشکلی ندارید
              همان طوری که قبلا هم عرض کردم مشکل شما در تنظیم فیوز بیتهای کلاک هست
              و باید LOW byte فیوز بیت های شما عدد 0XE4 تنظیم بشه
              یعنی فیوز CKDIV8 غیر فعال یا یک باشه
              و فیوز CKOUT غیر فعال یا یک باشه
              و فیوز SUT1 غیر فعال یا یک باشه
              و فیوز SUT0 فعال یا صفر باشه
              و فیوز CKSEL3 فعال یا صفر باشه
              و فیوز CKSEL2 غیر فعال یا یک باشه
              و فیوز CKSEL1 فعال یا صفر باشه
              و فیوز CKSEL0 فعال یا صفر باشه

              به همین سادگی :nice:
              آقای اسدی من مدار رو روی برد برد درست کردم و چندین بار اتصالات رو چک کردم
              ولی باز هم کار نمیکنه
              یعنی LED دائم همون چشمک 3 ثانیه رو ادامه میده و فشار دادن یا نگه داشتن کلید تغییری ایجاد نمیکنه
              من روی پروگرام کردنم شک دارم
              طبق گفته های شما بیت ها رو تنظیم کردم ولی اون "و باید LOW byte فیوز بیت های شما عدد 0XE4 تنظیم بشه" رو نفهمیدم
              من با PonyProg2000 پروگرام کردم
              ممنون میشم اگر راهنمایی کنید
              اینم عکس برنامه و تنظیماتی که من انجام دادم :


              با تشکر
              مفید بود ؟ بجای اسپم میتونید از دکمه ی تشکر استفاده کنید.
              [img width=405 height=100]http://eros8631.persiangig.com/image/pp.png[/img]

              دیدگاه


                پاسخ : پروژه کامل ریموت 4 کاناله رادیویی ASK لرنینگ

                با سلام
                دوست عزیز، فیوز بیت ها رو که مطابق با اونچه که از گفته های جناب اسدی نفل قول کردید ، درست پروگرام کردید.

                از صحیح بودن اتصالاتتون مطمئنید ؟
                ماژول دریافت کنندتون با ریموتتون هم فرکانس هست ؟

                دیدگاه


                  پاسخ : پروژه کامل ریموت 4 کاناله رادیویی ASK لرنینگ

                  نوشته اصلی توسط mojtaba_led
                  با سلام
                  دوست عزیز، فیوز بیت ها رو که مطابق با اونچه که از گفته های جناب اسدی نفل قول کردید ، درست پروگرام کردید.

                  از صحیح بودن اتصالاتتون مطمئنید ؟
                  ماژول دریافت کنندتون با ریموتتون هم فرکانس هست ؟
                  سلام دوست عزیز و ممنون از وقتی که گذاشتید
                  بله اتصالات رو چند بار چک کردم و مشکلی نبود
                  ماژول هم kst-rx706 هست که از 315 تا 433MHz رو ساپورت میکنه (طبق چیزی که روش نوشته)
                  ماژول رو تست هم کردم با یک LED و سالمه
                  فرستنده هم یه ریموت ev1527 با مقاومت اسیلاتور 330K هست
                  متاسفانه اصلا مدار وارد مرحله ی لرن نمیشه و چشمک زدن LED همون 3 ثانیه هست :sad:
                  مفید بود ؟ بجای اسپم میتونید از دکمه ی تشکر استفاده کنید.
                  [img width=405 height=100]http://eros8631.persiangig.com/image/pp.png[/img]

                  دیدگاه


                    پاسخ : پروژه کامل ریموت 4 کاناله رادیویی ASK لرنینگ

                    با سلام. از آقایون کسی میدونه فرق ریموته 2010 بتا با 2007 و 2009 چیه؟؟
                    طب اسلامی

                    دیدگاه


                      پاسخ : پروژه کامل ریموت 4 کاناله رادیویی ASK لرن&#1

                      نوشته اصلی توسط mahdifaheca
                      با سلام. از آقایون کسی میدونه فرق ریموته 2010 بتا با 2007 و 2009 چیه؟؟
                      شاید توانشون باهم فرق داره ، اگه فهمیدید به منم بگید چون من دنبال یه توان بالاشم

                      دیدگاه


                        پاسخ : پروژه کامل ریموت 4 کاناله رادیویی ASK لرنینگ

                        نوشته اصلی توسط y_kazemiyekta
                        سلام خدمت مهندسین عزیز
                        کسی می دونه که آیا میشه گیرندرو به usart میکرو وصل کردیانه؟
                        من گیرنده HMR رو جواب گرفتم.ممنون میشم راهنمایی کنید.
                        به نظرم بشه چون تا اونجا که من فهمیدم این فقط یه گیرنده هست که با مدولاسیون ASK کار میکنه و فقط اطلاعت رو دمودوله میکنه و فقط کافیه که قالبی که اطلاعات توش قرار گرفته (یعنی قالبی که فرستنده (که مدولاتورش ASK باشه )اطلاعات رو تو اون ارسال میکنه ) براساس USART باشه اون وقت میشه یه ارتباط یه طرف برقرار کرد.مثلا میشه از همین ماژول ASK / RFTM1-315 برای ارسال اطلاعات تو قالب پروتکل UART استفاده کرد و اونور با این ماژول ها دریافت کرد.

                        دیدگاه


                          پاسخ : پروژه کامل ریموت 4 کاناله رادیویی ASK لرنینگ

                          جناب مهندس اسدی گرامی امیدوارم که ببخشید ، مشخصه که خیلی سرتون شلوغه !

                          من میخوام برنامه این الگوریتم رو که فرموید بنویسم (تا انشالله فرجی بشه برد مون بیشتر بشه ریموت که پیدا نکردم):
                          یکی از تایمر ها رو با پریود 100 کیلو هرتز تنظیم میکنید و داخل اینتراپتش پین ورودی رو چک میکنید
                          1- یک متغیر رو اگر ورودی صفر باشه اضافه میکنید تا ورودی یک بشه در غیر اینصورت
                          2- یک متغیر دیگه رو اگر ورودی یک باشه اضافه میکنید تا ورودی صفر بشه
                          3- اگر متغیر اول تقیبم بر متغیر دوم بزرگتر از 5 باشه یعنی متغیر اول بزگتر از 5 برابر متغیر دوم باشه (بیت استارت هست)مقدار ریموت بدست اومده رو در یک متغیر دیگه کپی میکنید همه چیز رو صفر میکنید در غیر این صورت
                          4 - اگر متغیر دوم بزرگتر از متغیر اول باشه (بیت یک هست) بیت متناظرشو در متغییر ریموت یک میکنید و در غیر این صورت (بیت صفر هست)

                          خوب اول سوالم روبپرسم ،
                          چرا تقسیم بر 5 ؟ مگه تو حالتی که دیتا میاد ، زمانی که دیتا یک هست ، حالت HIGH بودن از حالت LOW بودن سه تا بیشتر نیست و یا زمانی که دیتا صفر هست ، حالت HIGH بودن از حالت LOW بودن سه تا کمتر نیست
                          پس چرا 5 ؟ البته خودم حدس میزنم که احتملا برای حفظ جانب احتیاط تا اینکه مطمئن بشیم واقعا اون بیت دیتا نیست ، درسته ؟

                          خوب من امدم برنامه فقط همین دیکد کردن با همین الگوریتمی که فرمودید رو نوشتم شد این :

                          کد:
                          #include <ioavr.h>
                          #include <ina90.h>
                          #include "delay.h"
                          #include <stdbool.h>
                          
                          // my defines :
                          #define set(port,pin)      port |= (1<<pin)
                          #define reset(port,pin)     port &= ~(1<<pin)
                          #define invert(port,pin)    port ^= (1<<pin)
                          
                          #define input_rf    (PINB&(1<<PINB1))
                          #define output_relay  PORTD
                          
                          #define high    1
                          #define low     0
                          
                          #define true    1
                          #define false    0
                          
                          #define timer_on  TCCR0B=0x02
                          #define timer_off  TCCR0B=0x00
                          
                          
                          // my prototype :
                          void default_setting (void);
                          
                          // global variables: 
                          unsigned long int i,j;
                          float result;
                          unsigned char num_of_bit,remote_temp[24],remote_crc[24],remote_final[24];
                          bool start_bit,remote_read,low_state,high_state,state_bit;
                          
                          
                          
                          int main( void )
                          {
                           static unsigned char k;
                          
                           CLKPR=0x80;
                           CLKPR=0x00;
                           
                           DDRD=0xFF;
                          
                           default_setting();
                           
                           TIMSK0=0x01; // Timer/Counter 0 Interrupt(s) initialization
                           
                            __enable_interrupt();
                            
                            while (1)
                             {
                             // Place your code here
                             if((start_bit==false)&&(remote_read==true)){
                              timer_off;
                              
                              for(k=0;k<24;k++)
                              remote_crc[k]=remote_temp[k];
                              
                             // invert(PORTD,1); 
                              
                             default_setting();
                              
                              
                              }
                              
                             }
                             
                          
                           
                          }
                          // set the defult setting of variables and flags:
                          void default_setting (void){
                           
                              start_bit=false;
                              remote_read=false;
                              low_state=false;
                              high_state=true;
                              state_bit=low;
                              num_of_bit=0;
                              i=0;
                              j=0;
                              TCNT0=0xF6;
                              timer_on ;
                              /* Timer/Counter 0 initialization 
                                 Clock source: System Clock
                                 Clock value: 1000.000 kHz
                                 Mode: Normal top=0xFF*/
                          } 
                          
                          // Timer 0 overflow interrupt service routine
                          #pragma vector=TIMER0_OVF_vect 
                          __interrupt void TIMER0_OVF(void){
                           // Reinitialize Timer 0 value
                          TCNT0=0xF6;
                          // Place your code here
                          
                          if(input_rf&&high_state)i++,low_state=true;
                          if((input_rf==false)&&low_state)j++,high_state=false;
                          if(input_rf&&low_state)low_state=false;
                          
                          if((high_state==0)&&(low_state==0)&&(remote_read==0)){
                          result=j/i;
                          
                          if(result>5)num_of_bit=0,start_bit=0;//this is start bit or premble in data sheet
                          else{
                          if((i>j)&&(start_bit==0)&&(remote_read==0))state_bit=high;
                          if((i<j)&&(start_bit==0)&&(remote_read==0))state_bit=low;
                          
                          remote_temp[num_of_bit]=state_bit;
                          if(++num_of_bit>23)remote_read=true;
                          }
                          
                          }
                          
                          }


                          اما وقتی که دیتا رو میندازم روی پورتای میکرو همش صفر رو نشون میده !؟
                          میکروم AT90USB162 هست .

                          دیدگاه


                            پاسخ : پروژه کامل ریموت 4 کاناله رادیویی ASK لرنینگ

                            خوب پیرو صحبتی که قبلا با شما داشتم فرموید که :
                            برد گیرنده رو که فکر نکنم در واقع شما باید برد فرستندتونو افزایش بدید که در این صورت به ولتاژ یا جریان بالاتری نیاز خواهد شد
                            در مورد طراحی یا تقویت برد فرستنده هم باید بگم خود بنده نمیتونم کمکی به شما بکنم ولی کار نشد نداره و در صورتی که تلاش کنید حتما میشه در قسمت فرستنده ریموتهای معمولی فقط از یک ترانزیستور ساده استفاده شده که به راحتی میتونید تقویت کرده و تغییراتی اساسی در بردش به وجود بیارید
                            خوب مهندس جان من هنوز نتونستم مدار شماتیک بورد خود این ریموتا رو در بیارم ، باید قطعاتشو باز کنم (از روی بوردش)
                            اما نظرتون در مورد این شماتیکی که تو دیتا شیت EV1527 زده ، چیه ؟ منظورم اینه:


                            البته تا اونجا که تست کردم با مدار بورد این ریموت بتا فرق داره
                            و همین جا یه سوال الان تو این شماتیک ، کریستال پس کجاست فقط یه مقاومت 330 کیلو هست اینجا !؟
                            تو بورد این ریموته یه کریستال 315 مگا هرتز هست !
                            سوال بعدی ببنید من درست متوجه شدم قطعات رو :
                            1. مقامت 4.7کیلو 5 عدد
                            2. مقاومت 330 کیلو یک عدد
                            3. مقاومت 680 اهم یک عدد
                            4. مقاومت 10 اهم یک عدد
                            5. خازن 5 پیکوفاراد یک عدد
                            6. خازن 6.8 پیکو فاراد یک عدد
                            7. خازن 100 نانو یک عدد
                            8. خازن 3پیکو فاراد یک عدد
                            9. سلف 2.2 میکرو هانری یک عدد
                            10 . ترانزیستور NPN مثلا BC337 (فعلا قطعات رو دیپ میخوام بگیرم تا ببینم جواب میده یا نه)
                            11. یک عدد LED
                            12. یک عدد باتری آلکالاین 12 ولتی
                            13. یدونه خازن متغیر گزاشته که دوسرش ر جامپر کرده اون به نظرتون چیه و چرا جامپر شده ؟

                            دیدگاه


                              پاسخ : پروژه کامل ریموت 4 کاناله رادیویی ASK لرنینگ

                              سلام

                              ممنون میشم اگه دوستانی که اطلاع دارند راهنمایی کنند

                              دو تا از ماژولها رو تست کردم بدون فشردن ریموت رو پایه خروجیشون همیشه ولتاژ هست (1.2 ولت) - به همین دلیل موقع اتصال به میکرو باعث خطا می شه
                              ایا ماژول سالم همین حالت رو داره ؟ یا ماژول ها خرابند


                              اگر بشه با اندازه گیری زمان 0و 1 ها رو تشخیص داد چطور باید با توجه به فرکانس کلاک این کار رو انجام داد

                              دیدگاه


                                پاسخ : پروژه کامل ریموت 4 کاناله رادیویی ASK لرن&#1

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

                                در واقع چیزی که مهمه اینکه دیکودر فقط دیتا های فرستنده رو بشناسه که میشناسه .
                                و یه پیشنهاد چون اینجا از وقفه استفاده شده تو ورودی اینتراپت یه خازن 1 نانو و مقاومت 4.7 کیلو پول دان کنید تا پایداری بیشتری زمانی که کدی فرستاده نمیشه داشته باشید.

                                اگر بشه با اندازه گیری زمان 0و 1 ها رو تشخیص داد چطور باید با توجه به فرکانس کلاک این کار رو انجام داد
                                متوجه نشدم ، یعنی خودتون میخوایید برنامه دیکودر رو بنویسید ؟

                                دیدگاه

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