بازخورد از یک سنسور اثر هال با فیلم

سنسور اثر هال

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

چگونه بازخورد را از محرک خطی بخوانیم

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

نکته منفی استفاده از سنسور اثر هال برای بازخورد موقعیتی این است که آنها یک موقعیت مطلق را اندازه گیری نمی کنند. در عوض آنها پالس هایی تولید می کنند که می توان آنها را شمرد تا مشخص شود که محرک چقدر حرکت کرده است. برای استفاده از این پالس ها برای بازخورد موقعیتی ، باید از a استفاده کنید میکروکنترلر برای شمردن پالس های تولید شده. برای انجام این کار ، باید از پین های وقفه خارجی میکروکنترلر خود استفاده کنید تا این پالس ها را در زمان وقوع شمارش کنید. وقفه های خارجی پین هایی هستند که تغییر ولتاژ را تشخیص می دهند و در مورد ما می توان برای تشخیص پالس ولتاژ از سنسور اثر هال استفاده کرد. برای اطمینان از اینکه می توانید از پین های میکرو کنترلر خود به عنوان پین های وقفه استفاده کنید ، باید با صفحه داده میکروکنترلر خود مشورت کنید. با استفاده از آردوینو اونو به عنوان مثال ، از پایه های 2 و 3 می توان برای وقفه های خارجی استفاده کرد. هنگامی که یک پین وقفه مناسب انتخاب کردید ، می توانید سیم خروجی سنسور اثر هال را به آن پایه متصل کنید و همچنین ولتاژ ورودی را به 5 ولت و زمین را به یک پایه زمین متصل کنید.

اتصال سنسور اثر هال به آردوینو 

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

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

تحریک محرک خطی خود را

برای استفاده دقیق از بازخورد موقعیتی از یک سنسور اثر هال ، باید همیشه از موقعیت شروع محرک خطی خود آگاه باشید. اگرچه وقتی برای اولین بار سیستم خود را روشن می کنید ، میکروکنترلر شما نمی تواند تشخیص دهد که محرک توسعه یافته است یا نه. برای این کار لازم است محرک خطی خود را در موقعیت معلوم قرار دهید. برای تحریک محرک خطی خود ، باید آن را به یک موقعیت مشخص هدایت کنید ، مانند کاملاً جمع شده. شما همچنین می توانید استفاده کنید سوئیچ های محدود خارجی موقعیت شناخته شده خود را در مکانی غیر از کاملاً گسترش یافته یا جمع شده تنظیم کنید. با استفاده از کد آردوینو زیر می خواهیم یک حلقه WHILE تنظیم کنیم که محرک خطی ما را به سمت موقعیت شناخته شده شما سوق دهد ، در این حالت کاملاً جمع می شود. ما می دانیم که شما در موقعیت شناخته شده ما هستید زیرا قطع سنسور اثر هال باعث ایجاد نمی شود. در این حالت ، بررسی می کنیم که آیا متغیر مراحل تغییر کرده است یا خیر تا تعیین کنیم آیا وقفه ایجاد شده است. ما همچنین باید اطمینان حاصل کنیم که زمان کافی برای انتظار ایجاد وقفه سپری شده است ، برای این منظور از تابع millis () استفاده می کنیم که از زمان شروع کد ، میلی ثانیه زمان را تولید می کند و آن را با مهر زمان قبلی مقایسه می کنیم . هنگامی که تشخیص دادیم که محرک خطی در موقعیت اصلی خانه ما قرار دارد ، حرکت محرک را متوقف کرده ، متغیر مراحل را تنظیم مجدد کرده و از حلقه WHILE خارج می شویم.

برخورد با راه اندازان دروغین

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

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

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

خلاصه

استفاده از یک سنسور اثر سالن برای بازخورد موقعیتی وضوح بسیار بیشتری را در مقایسه با بازخورد از یک قوی سنج فراهم می کند. همانطور که می تواند وجود داشته باشد 1000s پالس در هر اینچ از حرکت, سنسورهای اثر سالن ارائه دقت و قابلیت اطمینان در موقعیت عملگر خطی خود را. حسگرهای اثر هال همچنین توانایی بیشتری را برای اطمینان از حرکت چند عملگر خطی به طور همزمان با هم فراهم می کنند چرا که شمارش پالس ها دقیق تر از ولتاژ در حال تغییر پونتینتیومتر هستند. با بهره گیری از ما FA-SYNC-X کنترل کننده عمل، شما حتی می توانید اطمینان حاصل شود که actuators حرکت در unison صرف نظر از بار. برای DIYers، شما می توانید بررسی کنید که چگونه اطمینان حاصل شود که عمل کننده های خود را در unison با استفاده از آردوینو حرکت می کند اینجا.

در زیر کد نمونه کامل مورد استفاده در این وبلاگ و ساخته شده بود برای کنترل 14" طول سکته مغزی گلوله سری 36 کال خطی Actuator. عمل کننده خطی با استفاده از a رانده می شود راننده موتور، که شما می توانید یاد بگیرند که چگونه به راه اندازی اینجا

[1] Monari, G. (June, 2013) درک وضوح در رمزهای نوری و مغناطیسی. بازیابی شده از: https://www.electronicdesign.com/technologies/components/article/21798142/understanding-resolution-in-optical-and-magnetic-encoders

Tags:

Share this article

محصولات ویژه

برای یافتن محرک مناسب به کمک نیاز دارید؟

ما محصولات خود را مهندس دقیق و تولید می کنیم تا قیمت مستقیم تولیدکنندگان را دریافت کنید. ما حمل و نقل همان روز و پشتیبانی مشتری آگاه را ارائه می دهیم. با استفاده از محاسبه گر محرک ما می توانید در انتخاب محرک مناسب برنامه خود کمک بگیرید.