דף 1 מתוך 1

בעיית crosstalk

נשלח: ה' אוקטובר 06, 2016 12:08 pm
על ידי odavid
אני בונה תופים אלקטרונים בעזרת הארדואינו (אכתוב על הפרויקט בהרחבה ברגע שיהיה מספיק בשל).
התופים מבוססים על חיישן נקישה (piezo) אשר ממיר הקשה למתח וכדי להרחיב את מספר הכניסות האנלוגיות השתמשתי במרבב 16 כניסות (4067).
לצורך אסתטיקה ונוחות, החיבורים בין החיישנים למרבב הם בעזרת כבל אודיו 3.5 מ"מ.

תיאור הבעיה:
כאשר אני מחבר את החיישנים ישירות לכניסות האנלוגיות של הארדואינו הכל עובד מצוין וכל חיישן מפעיל צליל של תוף שנקבע מראש, אך כאשר אני מחבר את החיישנים לכניסות האנלוגיות של המרבב, נקישה על אחד מפעילה לעתים גם אחד אחר.

אני מכיר את התופעה בתור crosstalk אבל לא ממש מצאתי דרך לפתור את הבעיה.

רעיונות, מישהו?

תודה מראש!

Re: בעיית crosstalk

נשלח: ה' אוקטובר 06, 2016 2:16 pm
על ידי Alex
שלום,

תאר איך אתה משתמש במרבב...
אתה צריך "לסרוק" את הכניסות השונות.
יש מצב שתפספס אחד הסיגנלים בזמן שאתה בודק כניסה אחרת.

Re: בעיית crosstalk

נשלח: ו' אוקטובר 07, 2016 7:44 am
על ידי odavid
מכיוון שהמרבב הוא של 16, מגדירים מטריצה 16x4, כאשר השורות מייצגות את הערוץ ממנו רוצים לקרוא את הסיגנלו העמודות הן טבלת האמת, ופשוט רצים עם לולאת for על כל הערוצים.
הבעיה היא לא פספוס של אות, הבעיה היא יצירה של אות מזוייף.
עלה לי רעיון שאולי צריך לחבר לאדמה את כל הכניסות שלא מחוברות לחיישן, למרות שלא קראתי אותן, כך שלא נראה לי שזה אמור לפתור את זה.
ניסיתי לחבר נגד של 10k בין החיישן לאדמה כמעין pull-down אבל זה לא עזר..

Re: בעיית crosstalk

נשלח: ו' אוקטובר 07, 2016 4:25 pm
על ידי Alex
אני עדיין חושב שאתה לא יכול לעבוד בצורה כזו אם אתה רוצה לזהות בצורה אמינה את החיווי.
אם הייתי בונה משהו כזה, הייתי כנראה מחבר את החישנים לכניסות שנותנות פסיקה לבקר, אז הבקר היה יכול לטפל בהקשה בצורה מיידית וגם אם לא, אז לא תהיה משמעות לזמן הסריקה.

לגבי הבעיה שלך, לא יודע באיזה קצב אתה מפעיל את המרבב, אבל גם לו יש זמן מעבר כלשהו ואת אתה עובד מהר מדי בין הקווים, אז יכול להיות שאתה רואה חיווי של קו אחר (אחד לפניו כנראה) ולא מה שאתה חושב שצריך להיות...