اطلاعیه

Collapse
No announcement yet.

برنامه نویسی برای تایمردار کردن رله

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

    برنامه نویسی برای تایمردار کردن رله

    [size=24pt][size=14pt]سلام دوستان .

    من میخاستم یه برنامه بنویسم که وقتی رو کیپد میزنم مثلا 5،،رله بعد از 5 ثانیه وصل بشه ویه دستگاهی رو روشن کنه .یعنی من هرکلیدی رو کی پد میزنم.. رو ال سی دی نشون بده و بعد از زدن کلید مورد نظر رله فعال بشه .یعنی اگر زدم 2 ؛؛رله بعداز 2 ثانیه فعال بشه یا زدم 4 ؛؛رله بعداز 4 ثانیه فعال بشه.

    در تابلوهای برق صنعتی برای موتورهای چاه اب ؛2 تا رله انالوگ وجود داره که ستاره رو به حالت مثلث تبدیل میکنه
    یه رله تایمری داره ،که تنظیم میکنه رو 10 ثانیه .بعد که استارت کردی و ستاره راه اندازی شد ،بعد از 10 ثانیه موتور به حالت مثلث تبدیل میشه .حالا من میخام اینو با میکرو انجام بدم


    یا به اندازه آرزوهایت تلاش میکنی یا به اندازه تلاشت ارزو میکنی

    #2
    پاسخ : برنامه نویسی برای تایمردار کردن رله

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

    دیدگاه


      #3
      پاسخ : برنامه نویسی برای تایمردار کردن رله

      سلام دوست عزیز سفارش نبود راهنمایی بود.من با بسکام و atmega 8 کار میکنم.یه برنامه ساده باشه نه تجملاتی وپیچیده که دوسستان بخان تو زحمت بیافتند :applause:
      یا به اندازه آرزوهایت تلاش میکنی یا به اندازه تلاشت ارزو میکنی

      دیدگاه


        #4
        پاسخ : برنامه نویسی برای تایمردار کردن رله

        خوب متاسفانه یا خوشبختانه من مدت زیادی که با بسکام کار نمیکنم اما یه پروژه در رابطه با کیپد داشتم یه دستی به سرو روش کشیدم شد این (همچین شلخته پلخته است اگه خوب بود بگید تا روش کار کنم) :
        keypad_with_mega16_v4_2.rar

        فایل های برنامه و شماتیک (پرتئوس) داخلش هست ، برنامه به زبان C ، میکرو مگا 16 و کامپایلر هم IAR هست یه نگاه بهش بندازید اگه خوشتون امد یه کاریش میکنیم

        البته این رو بگم که کیپد با دیبانس 1 ثانیه ای کار میکنه و اینکه مدت زمان قایل اجرا با تایمر از 1 تا 999 ثانیه هست.

        دیدگاه


          #5
          پاسخ : برنامه نویسی برای تایمردار کردن رله

          اقا دمت گرم مشتی هستی نگاه کردم خوب هستش .فقط یه مشکل این بصورت کامل رله رو نگه میداره (ثابت هست)باید لحظه ای عمل کنه .اگر یه ساعتم با تاریخ داشته باشه که LCD خالی نباشه عالی عالی میشه بازم به خاطر لطفی که کردی ممنونم دوست خوبم
          یا به اندازه آرزوهایت تلاش میکنی یا به اندازه تلاشت ارزو میکنی

          دیدگاه


            #6
            پاسخ : برنامه نویسی برای تایمردار کردن رله

            میکروش همین مگا 16 باشه مشکلی ندراه ؟
            متوجه نشدم ،شما میخوای دائم باشه یا به صورت لحظه ای ؟
            در مورد ساعت فعلا شرمنده الان درگیر یه کار دیگم .در موردش بیشتر توضیح بدید یعنی چجوری باشه مثلا همیشه باشه یا نه وقتی که داریم تایم رو وارد میکنیم نمایش داده نشه و... .
            یه چیزه دیگه آقا الان که تو پرتئوس چک کردم تو زمانهای بالای 15 ثانیه چند ثانیه اختلاف داره ، حدود دو تا سه ثانیه البته این رو تو واقعیت باید دید که به چه صورت عمل میکنه ، راستش چیزی در این رابطه به ذهنم الان نمیرسه.

            دیدگاه


              #7
              پاسخ : برنامه نویسی برای تایمردار کردن رله

              سلام .اگر ATMEH 8 باشه بهتره.ارزانتر قیمتش تمام میشه.ببنید در تابلوهای سه فاز 2 رله تایمر دار دستی وجود داره که زمانی که استارت رو می زنه رله 1 بعد از مثلا 15 ثانیه مدار رو از حالت ستاره به مثلث تبدیل میکنه پس باید لحظه ای باشه . این رله رو من میخام جایگزین اون کنم اگه 2تا خروجی داشته باشه کارم حله.اتفاقا زمانهای مابین 4ثانیه تا 20 ثانیه مهمه
              یا به اندازه آرزوهایت تلاش میکنی یا به اندازه تلاشت ارزو میکنی

              دیدگاه


                #8
                پاسخ : برنامه نویسی برای تایمردار کردن رله

                خوب آقا الان یادم افتاد که تقریبا یه همچین چیزی رو برای یه نفر دیگه هم تو همین انجمن طراحی کرده بودم البته کامپایلرش CV هست
                منظورم اینه :
                http://www.persiangig.com/pages/down...r%26keypad.rar

                pass : mojtaba_led@yahoo.com

                این یکی رو هم نگاه بندازید ببینید این چطوره ؟
                البته توی این یکی با زدن استارت خروجی یک میشه و تا زمان اتمام زمان یک میمونه فعلا یه نگاهی بهش بندازید .تا بعدا روی حالت لحظه ایش کار کنیم.
                و اینکه از 0 تا9999 مقدار میگیره.

                دیدگاه


                  #9
                  پاسخ : برنامه نویسی برای تایمردار کردن رله

                  اقا مرسی از پیگیریت . واقعا لطف کردید--- :nice:این نسبت به قبلی بهتره.ولی همینطور که اشاره کردید در حالت استارت یکی از خروجیهاش یک هست.اگر این مسله حل بشه خوب میشه .بعدشم مقدار عددی که وارد میشه باید در EPROM ذخیره بشه که هر وقت برق میره پاک نشه . چون می خام 10تا ازاین مدار درست کنم در زمانهای مختلف باید رله رو فعال کنه مثلا اگر من زدم 7 این توحافظه EPROM بمونه واین مدار همیشه بعد از 7ثانیه رله رو وصل کنه .بطور کل اون مقدار عددی که من میزنم در حافظه EPROM ذخیره بشه وان مدار برا همیشه بعد از ان زمان وارد شده فعال بشه واگر خواستم پاکشم کنم بتونم ومقدار دیگه ای وارد کنم .اگر متوجه نشدید که منظورم چی هس بگید تا بیشتر توضح بدم د :applause:
                  یا به اندازه آرزوهایت تلاش میکنی یا به اندازه تلاشت ارزو میکنی

                  دیدگاه


                    #10
                    پاسخ : برنامه نویسی برای تایمردار کردن رله

                    نوشته اصلی توسط mojtaba_led
                    خوب آقا الان یادم افتاد که تقریبا یه همچین چیزی رو برای یه نفر دیگه هم تو همین انجمن طراحی کرده بودم البته کامپایلرش CV هست
                    منظورم اینه :
                    http://www.persiangig.com/pages/down...r%26keypad.rar

                    pass : mojtaba_led@yahoo.com

                    این یکی رو هم نگاه بندازید ببینید این چطوره ؟
                    البته توی این یکی با زدن استارت خروجی یک میشه و تا زمان اتمام زمان یک میمونه فعلا یه نگاهی بهش بندازید .تا بعدا روی حالت لحظه ایش کار کنیم.
                    و اینکه از 0 تا9999 مقدار میگیره.
                    مداری که دوست عزیزم mojtaba_led پیشنهاد دادن ؛تا یه حدی کار رو پیش بردنند.ولی ت2تا اشکال هست و اون اینکه با c هستش که من با بسکام کار میکنم و مشکلی که داره در حالت عادی ،یکی از خروجی ها فعال هست .در صورتیکه نباید باشه و باید زمانیکه استارت میزنی ستاره راه اندازی بشه
                    یا به اندازه آرزوهایت تلاش میکنی یا به اندازه تلاشت ارزو میکنی

                    دیدگاه


                      #11
                      پاسخ : برنامه نویسی برای تایمردار کردن رله

                      سلام آقای دکتر
                      شرمنده دارم یه پروژه انجام می دم و وقتم محدوده که زیاد برسم به سایت

                      این برنامه رو ببینین

                      کد:
                      $regfile = "m32def.dat"
                      $crystal = 1000000
                      $baud = 9600
                      '===================
                      Config Timer0 = Counter , Prescale = 256
                      Config Portb.0 = Output
                      Config Portb.1 = Output
                      
                      Relay1 Alias Portb.0
                      Relay2 Alias Portb.1
                      
                      Relay1 = 0
                      Relay2 = 0
                      '===================
                      Dim X As Integer
                      Dim Y As Integer
                      Enable Interrupts
                      Enable Timer0
                      Timer0 = 0
                      On Timer0 Baby
                      
                      Do
                      'start button relay1 Relay1=1
                      'set time  y=15*x: start timer0
                      
                      Loop
                      
                      End
                      
                      
                      Baby:
                      X = X + 1
                      If X > Y Then
                      X = 0
                      Relay1 = 0
                      Waitms 500
                      Relay2 = 0
                      Stop Timer0
                      End If
                      
                      Return


                      در این برنامه
                      در خط 'start button relay1 Relay1=1
                      در صورتی که مثلا کاربر دکمه ای رو فشار بده و دستگاه وصل بشه Relay1=1 باید بنویسین

                      در این خط هم عددی رو که از keypad گرفتین رو جایگزین x کنین و سپس تایمر رو اجرا کنین(یعنی اگر x باشه 10 بعد از 10 ثانیه برنامه رله یک رو غیرفعال و سپس رله دوم رو فعال می کنه)
                      'set time y=15*x: start timer0

                      قسمت اعظم برنامه رو تکمیل کردم قسمت های دیگه رو ان شالله که بتونین راحت بنویسین

                      بازم شرمنده یع مدت نمی رسم برای جواب باید پروژه ام رو تکمیل کنم
                      هیچ دانش آموزی نیست که به در خانۀ دانشمندی آمد و شد کند, مگر این که خداوند برای هر گامی که برمی دارد عبادت یک سال را برایش رقم زند.

                      دیدگاه


                        #12
                        پاسخ : برنامه نویسی برای تایمردار کردن رله

                        سلام آقا دکتر
                        این برنامه رو تست رو ببینین

                        http://eca.ir/sharing/uploads/13427668261.rar

                        دکمه استارت بعد از اینکه عدد رو وارد کردین و استارت کردین براتون تایمر رو راه اندازی می کنه و قبلش هیچ گونه عملی از خودش نشون نمی ده

                        هیچ دانش آموزی نیست که به در خانۀ دانشمندی آمد و شد کند, مگر این که خداوند برای هر گامی که برمی دارد عبادت یک سال را برایش رقم زند.

                        دیدگاه


                          #13
                          پاسخ : برنامه نویسی برای تایمردار کردن رله

                          نوشته اصلی توسط baby_1
                          سلام آقا دکتر
                          این برنامه رو تست رو ببینین

                          http://eca.ir/sharing/uploads/13427668261.rar

                          دکمه استارت بعد از اینکه عدد رو وارد کردین و استارت کردین براتون تایمر رو راه اندازی می کنه و قبلش هیچ گونه عملی از خودش نشون نمی ده
                          سلام
                          داش baby واقعا ممنونم .دستت طلا

                          یا به اندازه آرزوهایت تلاش میکنی یا به اندازه تلاشت ارزو میکنی

                          دیدگاه


                            #14
                            پاسخ : برنامه نویسی برای تایمردار کردن رله

                            داش baby در مرود این قسمت ها میشه یه توضیحی بدید؟؟
                            چرا b رو 15 ضرب کردید و مساوی y قرار دادید؟؟
                            Y = 15 * B
                            ===============
                            و این قسمت :
                            متغییر c چی هست ؟؟C = C + 1

                            If C > Y Then
                            C = 0
                            Relay1 = 1
                            Waitms 500
                            Relay2 = 1
                            یا به اندازه آرزوهایت تلاش میکنی یا به اندازه تلاشت ارزو میکنی

                            دیدگاه

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