السلام عليكم ورحمة الله وبركاته
اخواني الاعزاء ، أرجو ان تكونوا بافضل حال باذن الله
عندي استفسار بسيط
في اول محاولة لي لقراءة Analog Input ،، فلقد قمت بتجربتها على S7-224 CPU و اشتريت EM لقراءة ال Analong Input وهو EM 231
ما اريد قرائته هو وزن ياتيني من Strain Gage موصول على Digital Indicator ،، المهم في الموضوع انني عندما انتهيت من التوصيل وبدأت بقرائة القيم ، لاحظت ان القيم لا تتناسب ابدا مع القيم الفعلية للاوزان ،،
ما فعلته في برنامجي هو انني قمت بعمل Move للـ AIW0 الى VW100 مثلا
وثم قمت بتحويل VW100 الى Double Integer عن طريق البلوك المتاح في عمليات Convert وخزنت القيمة في VD100 مثلا
وبعد ذلك قمت بتحويل ال Double Integer الى REAL عن طريق بلوك التحويل المعروف وخزنت القيمة في VD300 مثلا
عندما قمت بتجربة برنامجي حصل التالي :
عندما وضعت وزنة قيمتها 20 كيلوجرام مثلا ،، ومن ثم قمت بقرائة القيمة الموجودة في VD300 ،، لاحظت انها لا تساوي الـ 20 ابدا !! بل كانت تساوي 628 !!
مع انني متأكد من ال Dip Switches ووضعياتهم ،، وايضا قمت بتغيير مؤشر ال calibration في ال EM 231 ولكن دون فائدة !!
المهم ،، ما قمت بعمله هو انني قمت باجراء عملية حسابية بسيطة على ال VD300 وهي انني قمت بعمل "قسمة" بين ال VD300 و 31.4
وذلك لأن 628 / 31.4 تساوي 20 !! ، وقمت بتخزين ناتج القسمة في متغير سميته VD400
والان يمكنني قرائة قسمة تساوي 20 في المتغير VD400 ،،
الان سؤالي ،، هل ما فعلته صحيح؟؟ وهل برنامجي استطيع استخدامه للمشاريع الفعلية ؟ ام ان هناك اعتبارات اخرى يجب علي وضعها في عين الاعتبار؟؟
لست أدري ،، فانني اريد المشورة والنصيحة ,, اتمنى ان يكون سؤالي بسيط ومبسط ومفهوم ، انا جاهز لأي استفسارات ..
وجزاكم الله خيرا وبارك لكم وبكم