كل الأنشطة
- الساعة الماضية
-
مرحبا أسد, من الممكن أن تكون المشكلة في VPN , أو مشكلة في الانترنت ,أو قد منعت المجلد من الوصول للانترنت وتثبيت الحزم باستخدام برامج اخرى . جرب الحلول التالية : تغيير موقع IP من VPN ( أو إلغاء VPN ). تحقق من الاتصال الانترنت. تحقق من عدم وضع أي قيود على المستخدم او المجلد او القرص من الوصول الى الانترنت. قم بفتح cmd ك administrator . جرب تثبيت المشروع في مجلدات اسمائها لا تحتوي على فراغات , قد تكون المشكلة من استخدام الفراغات في اسماء المجلدات , مثلاً جرب تثبيت المشروع في العنوان التالي : C:\Users\bdalh\Desktop\login_test
-
Abdalrahman Sermah اشترك بالأكاديمية
-
شعيب جادالله اشترك بالأكاديمية
-
Muhammad Alnassan اشترك بالأكاديمية
- اليوم
-
بعد تعلمك و إتقانك الأساسيات التي ذكرتها مثل أساسيات البرمجة ولغة جافاسكريبت يصبح من السهل تعلم لغة برمجة أخرى مثل بايثون وبالنسبة لمجال تعلم الآلة بعد الخطوات التي قمت بذكرها في تعليقك تحتاج تعلم استخدام المكتبات الشهيرة مثل Scikit-learn، TensorFlow، Keras، وPyTorch. هذه المكتبات توفر أدوات قوية لبناء وتدريب نماذج التعلم الآلي. تعلم كيفية جمع وتنظيف وتحليل البيانات باستخدام مكتبات مثل NumPy و Pandas. هذا أمر بالغ الأهمية لإعداد البيانات للتدريب على نماذج التعلم الآلي. تطبيق ما تعلمته على مشاريع عملية في مجالات مثل التصنيف، التنبؤ. هذا سيساعدك على بناء معرض أعمال قوي. الخطوات السابقة ليست بشكل مفصل لذلك يفضل الإطلاع على المصادر الموجودة بالتعليقات السابقة للمزيد من التفاصيل بالنسبة لإطار العمل، لا توجد إطارات عمل مثل الويب في تعلم الآلة ( بنفس الفكرة ). ولكن هناك مكتبات ومنصات مختلفة مثل TensorFlow و PyTorch التي تستخدم لبناء وتدريب نماذج التعلم الآلي. اختيار المكتبة المناسبة يعتمد على احتياجات المشروع والخبرة السابقة.
-
يزداد اعتماد البشر على اﻵلات يومًا بعد يوم، ويبتكر اﻹنسان وسائل مختلفة لتطوير هذه اﻵلات وتسهيل قيادتها والتعامل معها. وقد راكم البشر معارفهم في بناء اﻵلات وتسخيرها منذ القدم، لكننا سنقفز في الزمن إلى أواخر القرن التاسع عشر وبداية القرن العشرين، إذا ساهمت جهود العديد من المخترعين وعلى رأسهم أديسون وتيسلا في وصول الطاقة الكهربائية (التي اكتشفت واستخدمت سابقًا) بشكل محدود إلى المنازل واخترعت المحركات الكهربائية. وقد تمّيزت هذه الطاقة بنظافتها وسهولة التحكم بها، وتوجيهها نحو المكان المطلوب بالكمية المطلوبة، وإمكانية وصل وفصل التجهيزات التي تعمل عليها عن مصادر التغذية بشكل آني. والكهرباء هي اﻵن بلا شك العماد اﻷساسي لحضارتنا الراهنة بكل تفاصيلها. وقد رافق الاستخدام المتزايد لهذه الطاقة نشوء العديد من العلوم القائمة عليها كعلم اﻹلكترونيات، وعلوم توليد الطاقة الكهربائية ونقلها وتوزيعها، وعلوم التحكم اﻵلي اﻹلكتروني، وصولًا إلى بناء الروبوتات. ومع تطور تلك العلوم ظهرت الحاجة إلى فنيين ومختصين ومهندسين وعلماء لصيانة المنظومات التي تعتمد على الطاقة الكهربائية وتطويرها، وتطوير أساليب التحكم بالتجهيزات الكهربائية من أجل قيادتها بالشكل اﻷمثل واﻷكثر فعالية. ويمر هؤلاء بمسارات تعليمية وتقنية مختلفة لبلوغ المستوى العلمي والفني المناسب لتأدية عملهم. وحتى لو تباعدت هذه المسارات التعليمية عن بعضها في مرحلة ما نظرًا لتشعب علوم الطاقة الكهربائية وتجهيزاتها، فهنالك مسارات أساسية لا بد أن يمر بها جميع المهتمين في هذا المجال والتي تشكل حجر اﻷساس في مسيرتهم العلمية والفنية وهذا ما سنناقشه في مقالنا. هذا المقال موجّه إلى كل الطلاب اليافعين الراغبين في احتراف علوم اﻹلكترونيات والتحكم باﻵلات والروبوتات وإلى أهاليهم. إذ سنناقش فيه المسارات التعليمية التي توصلهم إلى المكان المطلوب وما الذي عليهم معرفته، وما الفوائد المتوقعة من هذه المسارات وكيف نجنيها؟ حتى تتكون لديهم صورة واضحة عن هذا الاختصاصات ونضعهم على الطريق الصحيح للانطلاق. المسارات الرئيسية لتعلم التحكم المبرمج والروبوتات نستعرض سريعًا في هذه الفقرة أهم المسارات التعليمية وفق التسلسل المنطقي الصحيح، ثم نفصّل فيها في فقرات تالية: مسار تعلم اﻹلكترونيات. مسار التحكم الصناعي وقيادة اﻵلة. مسار اﻹلكترونيات المبرمجة والمتحكمات المصغّرة. مسار وحدات التحكم المتكاملة والحواسب المصغّرة. مسار علوم الروبوت. مسار تعلم اﻹلكترونيات علم اﻹلكترونيات مجال واسع وشديد التشعب ودراسته ليست بالأمر بالسهل وهو يحمل الكثير من التحديات، لكنه مع ذلك علم ممتع وتخصصاته مطلوبة في كل مجالات حياتنا المعاصرة. ما هو علم اﻹلكترونيات يُعرف علم اﻹلكترونيات بأنه علم يدرس ويبحث في إنتاج عناصر كهربائية قادرة على التحكم بالتيار الكهربائي وتوجيهه نحو عناصر محددة في المكان المحدد والتوقيت المحدد. ولكل عنصر إلكتروني وظيفة محددة: فمنها ما يخفض شدة التيار الكهربائي، ومنها يرفعه، ومنها ما يمتص الطاقة الكهربائية ويحوّلها إلى ضوء، وأخرى تمتص الضوء وتحوّله إلى تيار كهربائي. لكن ما الفائدة من كل ذلك؟ للإجابة عن هذا السؤال سنتخيل أنك تريد أن تتحكم بشدة الإضاءة في غرفتك، فقد تريدها أن تكون قوية عندما تجلس إلى طاولة الدراسة وأن تكون منخفضة جدًا عندما تجلس إلى شاشة الحاسب لتلعب إحدى ألعابك المفضلة، فكيف يساعدنا علم اﻹلكترونيات؟ اﻷمر بغاية البساطة. إذ تتعلق شدة اﻹضاءة بزيادة شدة التيار الكهربائي الي يصلها، وهكذا نستخدم مثلًا عنصرًا يُدعى "مقاومة متغيرة Variable resistor". يأتي هذا العنصر على شكل مفتاح يمكن تدويره. فعندما يدور هذا المفتاح باتجاه معين يزيد تدفق التيار عبره إلى اﻹضاءة وتزيد شدتها وإن أدرته بالاتجاه المعاكس يعيق تدفق التيار الكهربائي وتقل شدة اﻹضاءة. هل ذكرّك هذه اﻷمر بشيء ما؟ تمامًا صنبور المياه! لكن ماذا لو أردت أن تفعل ذلك دون أن تضطر إلى مغادرة اللعبة التي تستمتع بها كثيرًا وتصل إلى المفتاح المثبّت على جدار الغرفة، هل هناك حل في عالم اﻹلكترونيات؟ بالتأكيد يوجد حل! مخطط لدائرة إلكترونية كيف تبدأ رحلتك في تعلم اﻹلكترونيات عليك في المرحلة اﻷولى أن تتعلم بعض الأساسيات التي سنلخصها في النقاط التالية: التعرف على مفاهيم ضرورية مثل الجهد الكهربائي، والتيار الكهربائي، وحركة التيار في اﻷسلاك. إجراء بعض الحسابات الكهربائية البسيطة لتحديد العناصر المناسبة لدائرتك اﻹلكترونية. تصميم بعض الدوائر البسيطة التي تهدف إلى تعليمك التعامل مع العناصر اﻹلكترونية اﻷساسية. اختيار مصادر التغذية الكهربائية التي تلزمك والطريقة الصحيحة في توصيلها مع الدائرة. تعلّم قراءة مواصفات العناصر اﻹلكترونية اﻷساسية، والطريقة الصحيحة في توصيلها مع مصدر التغذية الكهربائية. استكشاف اﻷخطاء الناتجة في الدوائر اﻹلكترونية البسيطة. استخدام بعض أجهزة القياس اﻷساسية مثل "المقياس متعددة الوظائف Multi-meter" الذي تستخدمه في قياس الكثير من المقادير الكهربائية مثل الجهد، وشدة التيار، ومقاومة العناصر، وتفقد صحة التوصيل بين عنصرين، وتحديد نقاط الانقطاع في الدائرة وغيرها. أما في المرحلة الثانية فيُفترض بك أن تتعلم العمل مع المفاتيح اﻹلكترونية بأنواعها المختلفة، وهي عناصر تمنع أو تسمح للتيار الكهربائي بالمرور وفق شروط كهربائية خاصة، ولها أهمية كبيرة في التحكم بدوائرك. ثم تتعرف في المرحلة الثالثة على العناصر اﻹلكترونية المتكاملة وهي دوائر إلكترونية كاملة لها وظيفة أو عدة وظائف، تُصنّع ضمن غلاف واحد لا يُرى منها سوى بضعة أرجل تربطها مع بقية العناصر. ومع تقدمك في هذا المسار ستتعلم أسماء ووظائف العديد منها وتتعلم طريقة استخدامها. تساعدك الكثير من البرامج الحاسوبية الخاصة والتي تُدعى بالمحاكيات في تصميم الدوائر اﻹلكترونية، والتأكد من سلامة عملها قبل أن تنجزها في الواقع. إذ يسهّل عليك تعلم أحد هذه البرامج إجراء الحسابات وتجربة العناصر التي تعتقد أنها مناسبة قبل أن تتخذ قرارك النهائي. ما الذي تتوقعه من تعلم اﻹلكترونيات؟ ستكون في نهاية هذا المسار قادرًا على: البحث عن العناصر التي تحتاجها من خلال شبكة اﻹنترنت. فهم ميزات العناصر اﻹلكترونية، وطريقة توصيلها من خلال القراءة الصحيحة، وفهم ورقة المواصفات الخاصة data sheet بالعنصر والتي تقدمها الجهة المصنعة له. تنظيم مجموعتك الخاصة من العناصر اﻹلكترونية التي أتقنت استخدامها وألفت طريقة توصيلها وحل مشاكلها. فهم الكثير من الدوائر اﻹلكترونية المختلفة وتحليل عملها للاستفادة من اﻷفكار المطبقة ضمنها. التواصل الفعّال مع أعضاء المجتمعات الافتراضية التي تهتم باﻹلكترونيات على شبكة اﻹنترنت لتجد حلولًا للمشكلات التي تعترضك. تحليل وتطبيق الكثير من المشاريع المميزة الجاهزة والتعلم منها لتطوير أفكارك. مسار التحكم الصناعي وقيادة اﻵلة بعد أن تتعلم أساسيات اﻹلكترونيات وربما في نهاية المرحلة اﻷولى وبداية الثانية، ستكون قادرًا على الانطلاق في هذا المسار المميز على الصعيدين العلمي والمهني. وإن كنت ملمًا بأساسيات الطاقة الكهربائية وتوصيل العناصر الكهربائية، يمكنك الانطلاق في هذا المسار على التوازي مع مسار تعلم اﻹلكترونيات. ماذا نقصد بالتحكم وقيادة اﻵلات؟ نقصد بقيادة اﻵلات القدرة على تشغيلها في الوقت المناسب ﻹنجاز عمل محدد وخلال فترة محددة، تخيّل مثلًا آلة تغليف ألواح الشوكولا، ما الذي قد يحدث إن لم تكن حركة هذه اﻵلة دقيقة؟ وما الذي قد يحدث إن لم تنجز تغليف اللوح قبل وصول اللوح التالي؟ ماذا لو كان عملها مرتبطًا بعمل آلة تسبقها؟ إن اﻹجابة عن هذه اﻷسئلة هو جوهر هذا المسار التعليمي. تتكون اﻵلات على مختلف أنواعها من محرّكات وأجزاء متحركة أخرى ترتبط بها، وتتكامل هذه اﻷجزاء لأداء وظيفة معينة، وعندما تجتمع عدة آلات تشكل خطًا آليًا، وهكذا سيكون التحكم بهذه اﻵلات وقيادتها بالطريقة الصحيحة أمرًا جوهريًا في نجاح هذا الخط اﻵلي. وللتحكم الصناعي نوعان: اﻷول تقليدي يعتمد على عناصر كهربائية مخصصة لأداء كل وظيفة من وظائف اﻵلة، والثاني مبرمج ترتبط فيه هذه اﻵلات بوحدات خاصة تُدعى وحدات التحكم المبرمجة تقودها معًا عن طريق برمجيات قيادة خاصة تطوّر خارج وحدات التحكم ثم تنقل إليه، وباﻹمكان تعديلها في أي وقت دون الحاجة إلى إيقاف خط اﻹنتاج لفترات طويلة. إذًا فالتحكم الصناعي هو قيادة اﻵلات واﻷجزاء المتحركة اﻷخرى ﻷداء وظائفها بالشكل اﻷنسب، أما كيف ستنطلق في تعلم هذه المسار، فهذا ما نناقشه تاليًا. كيف تبدأ رحلتك في مسار التحكم الصناعي وقيادة اﻵلات؟ عليك في المرحلة اﻷولى أن تتعلم بعض النقاط اﻷساسية ونلخصها كالتالي: التعرف على نوعي التيار الكهربائي المستخدمان في تغذية اﻵلات، وهما التيار المستمر والتيار المتناوب والتعرف على خصائصهما ومجالات استخدامهما. الاطلاع على أنواع المحركات المختلفة، وطريقة تشغيلها وإطفائها، ونوع التغذية الكهربائية التي تحتاجها. التعرّف على عناصر فصل ووصل أجهزة الحركة وعناصر التوقيت واﻷزرار والمبدلات وغيرها من العناصر اﻷساسية في دوائر التحكم الصناعي. تعلم توصيل دوائر بسيطة للتحكم في تشغيل محركات صغيرة أو منظومات إضاءة بسيطة. تعلم قراءة مخططات دوائر التحكم والتمييز بينها وبين مخططات دوائر التغذية الكهربائية. تعلم استخدام عناصر حماية الدوائر مثل قواطع الحماية والمنصهرات fuse. ستألف في نهاية هذه المرحلة الكثير من اﻷفكار التي تتعلق بالمحركات وأساليب فصل ووصل الطاقة عنها وعن اﻷجزاء اﻷخرى من اﻵلة وطريقة التحكم بها. توسّع المرحلة الثانية معارفك من خلال الاطلاع على تجهيزات مراقبة التغذية الكهربائية وعلى الحساسات الصناعية التي تعطيك معلومات هامة عن وضع اﻵلة أو أجزائها مثل حساسات تقدير المسافة، وحساسات اكتشاف الحركة وغيرها. وهي عناصر غاية في اﻷهمية ولها دور مفصلي في تحقيق التشغيل المتوازن للآلة. وستطلع في المرحلة الثالثة على أسلوب التحكم المبرمج، وفهم آلية عمل وحداته وطرق توصيلها واستثمارها مثل وحدات "الدوائر المنطقية القابلة للبرمجة PLC". أما تعلّم برمجة هذه الوحدات فهذا أمر اختياري ويتعلق بمدى جديتك في تطوير مهنتك. فقد تطلب من مختصين أن يبرمجوا لك هذه الوحدات لتنفيذ الوظائف التي تريدها ثم تقوم بتركيبها ووصلها، وقد تحاول أن تتعلم برمجتها بنفسك وهنا لابد من مرحلة رابعة تتعلم فيها أساسيات البرمجة عمومًا ثم تنتقل إلى اﻷساليب البرمجية الخاصة بالوحدات المبرمجة. وحدة دائرة منطقية قابلة للبرمجة PLC ما الذي تتوقعه من تعلم التحكم الصناعي وقيادة اﻵلات؟ ستكون قادرًا عند إكمال هذا المسار التعليمي على: فهم أساليب التحكم باﻵلات وقيادة اﻷجزاء المتحركة. تمييز مخططات التحكم عن مخططات التغذية الكهربائية للآلات وقرائتها جيدًا. تمييز معظم عناصر التحكم الكهربائي التقليدي في الدوائر الكهربائية. اكتشاف أخطاء دوائر التحكم وحل مشاكلها. إنجاز دوائر تحكم خاصة بك لقيادة منظومات آلية محدودة. استخدام وحدات التحكم المبرمج وتوصيلها بالشكل الصحيح. فهم طريقة برمجة وحدات التحكم. كتابة برامج كاملة لقيادة اﻵلات إن تابعت حتى نهاية المرحلة الرابعة من هذا المسار. مسار اﻹلكترونيات المبرمجة والمتحكمات الصغرية يتابع في هذا المسار كل من يريد تحقيق الأهداف التالية: يريد التعمق في التحكم اﻵلي المبرمج. يرغب في فهم تفاصيل تصميم وحدات التحكم المبرمج. أكمل مسار اﻹلكترونيات ويريد تهيئة نفسه للعمل على الروبوتات دون المرور بمسار التحكم الصناعي. أكمل المسارين السابقين ويريد تعزيز قدراته في التحكم باﻵلات ومخاطبتها وصولًا إلى العمل مع الروبوتات وبناء أنظمة انترنت اﻷشياء. ما هي اﻹلكترونيات المبرمجة والمتحكمات الصغرية؟ هي دوائر إلكترونية متكاملة يمكن أن تتغير وظيفتها وفقًا لبرنامج مخصص يُكتب خارجها ثم ينقل إليها. وتقسم هذه الدوائر عمومًا إلى صنفين عامين أولهما دوائر متكاملة تُبرمج كي تؤدي وظيفة إلكترونية محددة مثل "مصفوفة البوابات القابلة للبرمجة FPGA"، وثانيهما دوائر تتتحكم ببقية العناصر الكهربائية واﻹلكترونية وتتبادل المعلومات مع محيطها وتُدعى بالمتحكمات الصغرية Micro-controller وهي بمثابة دماغ مصغّر يتحكم بالدائرة اﻹلكترونية الخارجية كما نريد. تبدأ هنا ملامح التخاطب مع اﻵلة بالظهور، فهذه المتحكمات قادرة على التواصل مع محيطها وتحسس التغيرات فيها. وستتمكن من استخدام هذه المتحكمات مثلًا في تصميم دوائر تفهم إشارات يدك أو تحلل صوتك لتأمر بعض الطرفيات المتصلة بدائرتها بتنفيذ عمل معين مثل فتح باب أو تشغيل جهاز ما. لوحة تشغيل متحكم صغري يظهر المتحكم في وسطها كيف تبدأ رحلتك في تعلم اﻹلكترونيات المبرمجة؟ عليك في المرحلة اﻷولى تعلّم البرمجة، والتفكير كمبرمج، فلن تستطيع إكمال هذا المسار دون أن تتقن أساسيات البرمجة والتفكير المنطقي، ستجد الكثير من لغات البرمجة والكثير من اﻵراء المتضاربة حول اختيار اللغة الأفضل، لكني أنصحك بتعلم لغة بايثون إذ تُعد عمومًا من اللغات القوية وسهلة التعلم نتيجة لصياغتها القريبة من صياغة الجمل في اللغة اﻹنكليزية، وإن أردت فعلًا احتراف هذا المجال من أوسع أبوابه فعليك بلغتتي C أو ++C فهما أكثر اللغات استخدامًا في هذا المجال واﻷمر يعود إليك أولًا وأخيرًا. تحتاج في المرحلة الثانية إلى التعرّف على أقسام المتحكمات الصغرية وميزاتها المختلفة، وما الذي تقدّمه لك كل شركة مصنعة وكل عائلة من خلال أوراق المواصفات الخاصة بهذه المعالجات. وهكذا ستكون قادرًا على اختيار المعالج الذي يناسب مشروعك. ولا بد في هذه المرحلة من تفهم طريقة توصيل المتحكم مع بقية عناصر الدائرة اﻹلكترونية وتتدرب على كتابة برامج بسيطة لهذا المتحكم وتعرف كي تنقلها إليه. ولا تنس أن مسار تعلّم اﻹلكترونيات ضروري جدًا في هذه المرحلة. وعليك في المرحلة الثالثة تعلّم طريقة وصل بعض الطرفيات اﻷساسية إلى المتحكم مثل لوحات المفاتيح وبعض أنواع شاشات العرض لتتمكن من إدخال بعض القيم وإخراج نتائج مرئية لما ينفذه برنامجك. وغالبًا ما تستفيد في هذه المرحلة من مكتبات برمجية جاهزة للتحكم بأكثر الطرفيات شيوعًا وكل ما عليك حينها هو دمجها مع شيفرتك وتعلم كيفية استخدامها. أما المرحلة الرابعة واﻷخيرة فهي مرحلة تعلّم العمل على المحاكيات، وهي برمجيات تقرأ شيفرتك وتريك نتيجة تنفيذها قبل ترحيلها إلى المتحكم وبالتالي ستوفّر عليك الوقت والجهد وخاصة عند تصميم دوائر أكثر تعقيدًا. هذا المسار شديد الخصوصية، فلكل متحكم طريقة مختلفة في البرمجة وطريقة مختلفة في نقل البرنامج إليه وبيئات عمل حاسوبية مختلفة لبرمجته، لكنها تتشابه إجمالًا في الخطوط العريضة ولن يصعب عليك في نهاية هذا المسار من تعلم برمجة متحكمات أخرى وبأقل جهد. ما الذي تتوقعه من تعلم برمجة المتحكمات الصغرية؟ ستكون قادرًا عند إكمال هذا المسار التعليمي من: اختيار المتحكم الصغري الملائم لمشروعك. تصميم الدائرة اﻹلكترونية اللازمة لاستثمار وتشغيل المتحكم. التعامل مع الحساسات والتحكم بتشغيل الكثير من التجهيزات الكهربائية. التعرف على بروتوكولات نقل المعطيات بين اﻷجهزة واستخدامها للتواصل مع التجهيزات المختلفة. كتابة برمجيات صحيحة ونقلها إلى المتحكمات لتنفيذها. مسار وحدات التحكم المتكاملة والحواسب المصغّرة يأتي هذا المسار متممًا ومكملًا للمسارين السابقين، وهو موجّه لمين يريد احتراف بناء أنظمة تحكم متكاملة سواء على الصعيد الصناعي كأنظمة إدارة المعامل أو على الصعيد التقني مثل بناء الروبوتات والتجهيزات اﻹلكترونية الذكية وأجهزة القياس والتحليل اﻵلي (وتُدعى أنظمة هذه التجهيزات باﻷنظمة المدمجة embedded systems) ما هي الوحدات المتكاملة وما هي الحواسب المصغّرة؟ تُعرّف وحدة التحكم المتكاملة control module بأنها دائرة إلكترونية لها تصميم محدد تضم متحكمًا أو معالجًا مصغرًا يحلل البيانات التي تصل إليه عبر نقاط محددة تُدعى نقاط الدخل ويصدر بيانات أو إشارات إلى نقاط أخرى تُدعى نقاط الخرج. لن تحتاج في الوحدات المتكاملة إلى الغوص في تفاصيل المعالج أو دائرته بل كل ما عليك فعله هو معرفة كيفية التعامل مع نقاط الدخل والخرج وكتابة برامج للتعامل معها مباشرة. نذكر من هذه الوحدات على سبيل المثال لوحات أوردوينو Arduino الشهيرة. تختلف الحواسب المصغّرة عن وحدات التحكم المتكاملة بأنها تمتلك نظام تشغيل حاسوبي وتستطيع الارتباط بطرفيات الحاسوب مثل شاشات العرض ومكبرات الصوت، كما تُكتب برامجها وتُنفّذ كما تكتب برامج الحاسوب تمامًا. لكنها تختلف عن الحواسب بوجود نقاط الدخل والخرج التي يمكنك التحكم فيها من خلال برامجك وربطها بما تشاء من الطرفيات وفق أسس محددة. من أشهر الأمثلة عليها الحاسوب المصغّر راسبيري باي Raspberry pi. الحاسوب المصغّر راسبيري باي 4 كيف تبدأ مسار الوحدات المتكاملة والحواسب المصغّرة؟ لابد أولًا أن تكمل مسار علم اﻹلكترونيات فهو مسار أساسي جدًا، ثم تنتقل بعد ذلك إلى مسار الإلكترونيات المبرمجة والمتحكمات الصغرية، إذ يساعدك هذا المسار على فهم طريقة كتابة البرامج المخصصة لوحدات التحكم المتكاملة والحواسب المصغّرة دون أدنى جهد. لكن إن قررت تخطي هذا المسار فلا بد على اﻷقل من تعلم إحدى لغتي البرمجة بايثون أو ++C، لكنك ستبذل جهدًا كبيرًا لفهم النقاط التي تتعلق ببرمجة المتحكمات الصغرية. إن العمل مع وحدات التحكم المتكاملة أكثر صعوبة من العمل مع الحواسب المصغّرة لأنه عليك في الواقع أن تبني نظام القيادة الخاص بها بنفسك بينما ستتعامل حرفيًا مع نظام تشغيل جاهز ومتطور في الحواسب المصغّرة. ننصحك بداية باقتناء لوحة أوردوينو (أيًا كان طرازها) ثم تتعلم طريقة توصيل الطرفيات إليها وكيفية كتابة برامج لها ونقلها إلى المتحكم الذي يقود اللوحة. بإمكانك التعرف على اللغة المستخدمة في برمجة هذه اللوحة من خلال موسوعة حسوب التي تقدم توثيقًا عربيًا متكاملًا لها. تساعدك أيضًا المحاكيات الحاسوبية في التأكد من صحة شيفرتك قبل نقلها إلى الوحدة. ويمكنك البحث في اﻹنترنت عن مشاريع جاهزة بسيطة والاشتراك في المناقشات وطرح اﻷسئلة ضمن مجتمعات أوردوينو الافتراضية وستجد بالتأكيد حلولًا لمعظم مشاكلك. وإن قررت العمل مع الحواسب المصغرة، بإمكانك شراء حاسوب راسبيري باي ثم العمل ضمن سلسلة مقالات "دليل راسبيري باي" التي تقدمها أكاديمية حسوب عن طريقة استخدام هذا الحاسوب من الصفر وحتى مرحلة تطبيق المشاريع المختلفة، كما ستجد في اﻷكاديمية كمًا جيدًا من المقالات ومقاطع الفيديو العملية التي تساعدك على التعلم بصورة أفضل. ما الذي تتوقعه من تعلم برمجة وحدات التحكم المتكاملة والحواسب المصغّرة؟ ستكون قادرًا عند إكمال هذا المسار التعليمي من: اختيار وحدة التحكم المتكاملة أو الحاسوب المصغّر الذي يلبي احتياجك. وصل الطرفيات إلى وحدات التحكم بالشكل الصحيح. كتابة برامج وتطبيقات لتنفيذ مختلفة اﻷفكار التي تتعلق بالتحكم بالوسط المحيط وتبادل البيانات معه. تصميم وتحريك روبوتات بسيطة. تعلم الأساسيات اللازمة لبناء منظومات إنترنت اﻷشياء IoT والروبوتات المتقدمة. مسار الروبوتكس يشمل علم الروبوتات علوم الحركة واﻹلكترونيات واﻵلات والبرمجة، فغايته اﻷساسية التخاطب الفعال مع آلة تستطيع من تلقاء نفسها تنفيذ أعمال متكاملة عالية التعقيد بناء على برمجيات صممت خصيصًا لإنجاز تلك اﻷعمال. كيف تبدأ مسار تعلم تصميم الروبوتات وبرمجتها عليك في المرحلة اﻷولى أن تكمل مسار علم اﻹلكترونيات ثم تنتقل إلى مسار التحكم الصناعي وقيادة اﻵلة فالروبوتات في معظمها آلات متحركة ولا بد من التعامل مع المحركات والحساسات التي تساعدها على التوجه والحركة. أتقن في المرحلة الثانية مسار المتحكمات المصغّرة وكيفية التخاطب مع الطرفيات المختلفة مثل المحركات الصغيرة والحساسات. أما إذا أردت استخدام طرفيات جاهزة مثل أنظمة قيادة محرّك متكاملة أو أنظمة حساسات جاهزة، فعليك الانتقال إلى مسار الوحدات المبرمجة المتكاملة وستجد كمًا هائلًا من الطرفيات التي تساعدك على بناء الروبوتات. ولا بد في المرحلة الثالثة من الإطلاع على طريقة عمل بعض الروبوتات الجاهزة واﻷجزاء المكوّنة منها وطريقة برمجتها ثم تجريب بعض المشاريع الجاهزة كي تطلع على التجهيزات الأكثر استخدامًا وطريقة توصيلها وعملها، وسيكسبك ذلك خبرة عملية ويساعدك في تجنب الكثير من اﻷخطاء التي يقع فيها المبتدئين. في الواقع تتشعب علوم الروبوتات وأنواعها كثيرًا ولكل منها طريقة عمل محددة وأسلوب برمجة محددة، وللاطلاع أكثر على هذا الموضوع عُد إلى مقال "دليلك الشامل إلى برمجة الروبوت" فستجد فيه كل ما تحتاجه حول تعلم برمجة الروبوت. صورة تمثيلية لروبوت متحرك ماذا تتوقع من تعلم الروبوتكس ستكون قادرًا عند إكمال هذا المسار التعليمي من: فهم آلية عمل الروبوتات بأنواعها. استخدام الروبوتات بفعالية أيًا كان نوعها. برمجة رويوت معين لينفذ أية أعمال تريدها. تصميم روبوتات بسيطة إلى متوسطة التعقيد من الصفر وبرمجتها. الخلاصة قدمنا في هذا المقال فكرة عن المسارات التعليمية التي تلزم أي شخص يرغب في احتراف العمل مع الأنظمة المدمجة والروبوتات وشرحنا فيها بشكل مبسط ما يضمه كل مسار وماهي المراحل التي يمر بها والنتيجة المتوقعة لما تعلمّه في نهاية كل مسار. مع ذلك، ليس من الضرورة التقيد تمامًا بالترتيب الذي اقترحناه لكنه النهج اﻷسلم لليافع الذي لا يمتلك شيئًا سوى العزيمة والالتزام! اقرأ أيضًا تجميع راسبيري باي والتحضير لاستخدامه إنشاء كتاب تفاعلي باستخدام سكراتش وحاسوب راسبيري باي تصميم وتنفيذ لعبة حسية تفاعلية باستخدام لوحة راسبيري باي بيكو تصميم وتنفيذ آلة موسيقية باستخدام لوحة راسبيري باي بيكو برمجة الروبوت: الدليل الشامل
-
شكراااا
-
Hisham Kamel اشترك بالأكاديمية
-
Hijazi Abdalqadir اشترك بالأكاديمية
-
عمر صلاح2 اشترك بالأكاديمية
-
Abdallh Mahmoud اشترك بالأكاديمية
-
سبب المشكلة غير واضح، فربما المشكلة راجعة إلى وجود عطل ما في منفذ الشحن أي في الدائرة الكهربية الخاصة به في اللوحة الأم، أو مشكلة في البطارية جرب إزالة البطارية ثم تفقد هل المشكلة اختفت أم لا. وأحد الأسباب أيضًا هو أن الشاحن غير مناسب للاب توب لديك، أي الجهد الكهربائي (الفولت) الخاص به غير مناسب للاب توب لديك، يجب شراء شاحن بمواصفات مناسبة أي له نفس الجهد ولكن تيار أعلى (أمبير)، حاول تجربة شاحن آخر.
-
Amany Nady اشترك بالأكاديمية
-
ياسمين درويش اشترك بالأكاديمية
-
سلام عليكم ورحمة الله وبركاته انا عندي مشكلة، واتمنى ان اجد الحل باسرع وقت عندي مشكلة في شحن الابتوب حيث أن الشاحن يتصل ثم ينقطع عن الشحن عندما تزداد سرعة المروحة رغم سلامة البطارية
- 2 اجابة
-
- 1
-
Shami Ali اشترك بالأكاديمية
-
- 4 اجابة
-
- 1
-
حاول أولاً حذف ملفات التخزين المؤقت، من خلال الأمر: npm cache clean --force إن استمرت المشكلة حاول إعادة تشغيل الحاسوب، إن استمرت عليك بحذف إصدار Node.js الذي لديك بالتوجه إلى Control Panel ثم اختر Programs ثم Programs and Features. ابحث عن Node.js ثم اضغط بزر الفأرة الأيمن واختر uninstall، بعد الإنتهاء أرجو تحميل الإصدار 18.17 فهو إصدار مستقر من خلال الرابط التالي: https://nodejs.org/dist/v18.17.0/node-v18.17.0-x64.msi
-
- 4 اجابة
-
- 2
-
فكرتك لاستخدام ملف الـ Print Spooler و Print Spooler API صحيحة، هنا مثال بسيط يوضح كيفية قراءة الملفات المطبوعة باستخدام Node.js و child_process: const { exec } = require('child_process'); // تعيين المسار الذي يحتوي على ملفات الطباعة المؤقتة const printSpoolerPath = 'C:\\Windows\\System32\\spool\\PRINTERS'; // قراءة الملفات المطبوعة exec(`dir /b ${printSpoolerPath}`, (error, stdout, stderr) => { if (error) { console.error(`حدث خطأ: ${error.message}`); return; } if (stderr) { console.error(`خطأ: ${stderr}`); return; } console.log(`الملفات المطبوعة: ${stdout}`); }); هذا مثال بسيط و عليك أن تبحث في الوثائق أكثر و تتعمق أكثر لتنفيذ المزيد من الوظائف مثل حذف الوظائف المطبوعة أو الوصول إلى المزيد من المعلومات المتعلقة بالطباعة.
-
يمكنك فعل ذلك بطريقة بسيطة جدا وهي أن تقوم بتعريف تاريخ اليومو من ثم تقوم بإنقاص 1 منه, ولكن باستخدام التوابعالخاصة بالكائن Date // الحصول على تاريخ اليوم var today = new Date(); // الحصول على تاريخ الأمس var yesterday = new Date(); yesterday.setDate(today.getDate() - 1);//هنا وضعنا تاريخ الأمس على أنه هو تاريخ اليوم منقوصا منه 1 console.log("تاريخ اليوم: " + today); console.log("تاريخ الأمس: " + yesterday); و هنا تابعsetDate هومن سيتولى أمر معالجة الحالات الحدية كأن يكون اليوم هوأخر يوم في الشهر أو في السنة أو أن السنة كبيسة ...الخ
- البارحة
-
عادي استخدمي border-style https://harmash.com/tutorials/css/background في هنا شرح مفيد للحدود
-
أنت لم تضيع وقتك في تعلم ما ذكرته وهو جافاسكريبت و React Native، بل على العكس هناك طلب على مطوري React Native الجيدين. ودائمًا أصعب لغة هي لغة البرمجة الأولى، وأنت الآن قمت بدخول مجال البرمجة وأصبح لديك أساسيات تستند إليها لتعلم ما تريد في المجالات المختلفة، فبالطبع الفرق كبير بينك وبين من يريد تعلم مجال مثل (تعلم الآلة) وهو بعيد تمامًا عن مجال البرمجة. لكن قبل إختيار المجال، عليك تحديد الوقت المتاح لك للحصول على وظيفة ويجب تحديد وقت واقعي وليس أمنيات، في حال كان الوقت المتاح لك سنة أو أقل، إذن مجال تعلم الآلة ليس لك. ابحث في سوق العمل لديك عن المجالات المطلوبة والتي تطلب خبرة سنة أو أقل ثم قم بتعلم المهارات المطلوبة، تلك هي الطريقة الصحيحة لدخول سوق العمل، والبحث يتم على مواقع التوظيف مثل LinkedIn و indeed و Bayt.
-
قم بدراسة النماذج والخوارزميات المستخدمة في تعلم الآلة، مثل الشبكات العصبية الاصطناعية والتعلم العميق وغيرها، و أيضا ركز على لغة بايثون فهي لغة البرمجة الأكثر استخداما في تطبيقات تعلم الآلة بسبب مجموعة واسعة من المكتبات المتاحة مثل TensorFlow وPyTorch و غيرهت، لذا تأكد من أنك تتقن بايثون جيدا. بالنسبة لسؤالك عن الاختلاف بين مجال تعلم الآلة ومجال تطوير الويب (React، Angular، Vue)، فهما مجالان مختلفان تماما، مجال تعلم الآلة يركز على تطوير نماذج وخوارزميات لفهم البيانات وتحليلها واستخدامها للتنبؤ والتصنيف والتكيف مع المعطيات، بينما مجال تطوير الويب يركز على بناء وتطوير تطبيقات الويب والمواقع باستخدام تقنيات مثل React، Angular، وVue. بمجرد أن تكتسب المهارات اللازمة في تعلم الآلة، يمكنك العثور على وظيفة في مجال تطوير البرمجيات مع تركيزك على تطبيقات تعلم الآلة، و أنصحك بقراءة هذا المقال، ففيه معلومات ممتازة تسهل لك طريقك في هذا المجال:
-
عليك أولاً إنشاء ملف Dart جديد في مشروعك وذلك الملف لعرض مجموعتي Firebase في جدول بيانات. ثم استيراد الحزم التالية في الملف: import 'package:cloud_firestore/cloud_firestore.dart'; import 'package:flutter/material.dart'; import 'package:data_table_2/data_table_2.dart'; الآن أنشيء نموذج بيانات لتمثيل البيانات في مجموعتي Firebase، فلو لديك مجموعتان "المستخدمون" و "المنتجات" ، فستحتاج إلى إنشاء نموذج بيانات لكل منهما. class User { String id; String name; String email; User({this.id, this.name, this.email}); factory User.fromFirestore(DocumentSnapshot snapshot) { return User( id: snapshot.id, name: snapshot['name'], email: snapshot['email'], ); } } class Product { String id; String name; double price; Product({this.id, this.name, this.price}); factory Product.fromFirestore(DocumentSnapshot snapshot) { return Product( id: snapshot.id, name: snapshot['name'], price: snapshot['price'], ); } } ثم استخدم FirebaseFirestore لجلب البيانات من مجموعتي "المستخدمون" و "المنتجات". final FirebaseFirestore firestore = FirebaseFirestore.instance; Stream<List<User>> getUsers() { return firestore .collection('users') .snapshots() .map((snapshot) => snapshot.docs.map((doc) => User.fromFirestore(doc))); } Stream<List<Product>> getProducts() { return firestore .collection('products') .snapshots() .map((snapshot) => snapshot.docs.map((doc) => Product.fromFirestore(doc))); } بعد ذلك استخدم DataTable2 لعرض البيانات في جدول بيانات. class MyHomePage extends StatefulWidget { @override _MyHomePageState createState() => _MyHomePageState(); } class _MyHomePageState extends State<MyHomePage> { List<User> users = []; List<Product> products = []; @override void initState() { super.initState(); getUsers().listen((event) { setState(() { users = event; }); }); getProducts().listen((event) { setState(() { products = event; }); }); } @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('عرض مجموعات Firebase في جدول بيانات'), ), body: SingleChildScrollView( child: Column( children: [ DataTable2( columns: [ DataColumn(label: Text('اسم المستخدم')), DataColumn(label: Text('البريد الإلكتروني')), ], rows: users .map((user) => DataRow(cells: [ DataCell(Text(user.name)), DataCell(Text(user.email)), ])) .toList(), ), DataTable2( columns: [ DataColumn(label: Text('اسم المنتج')), DataColumn(label: Text('السعر')), ], rows: products .map((product) => DataRow(cells: [ DataCell(Text(product.name)), DataCell(Text(product.price.toString())), ])) .toList(), ), ], ), ), ); } } وبإمكانك الإعتماد على فلاتر لتصفية البيانات في جدول البيانات، كإضافة فلتر لعرض المستخدمين من بلد معين. class MyHomePage extends StatefulWidget {
-
السلام عليكم ورحمة الله وبركاته انا مطور رياكت ناتيف وعندي خبرة ف جافاسكريبت ولما كنت بتعلم للاسف صيعت وقتي في حاجات لم اكن اعرفها ولم احتاجها .. ولا اريد ان افعل ذلك في مجال تعلم الالة هذا الطريق الذي اعرفه لاكون Machine Learning Developer - الاحصاء والتحليل - الجبر الخطي - التفاضل والتكامل - لغة بايثون ماذا احتاج بعد حتي احصل علي وظيفة ؟ وهل مجال تعلم الالة له اطر عمل مختلفة مثل الويب ( React - Angular - Vue ) ام ماذا ؟
- 3 اجابة
-
- 2
-
السلام عليكم ورحمة الله وبركاته اريد جلب 2 collection الفايربيس وعرضها باdata table باستخدام فلاتر
- 1 جواب
-
- 1
-
المشروع ليس سهل وسياخذ وقت طويل جدا اذا كنت ستعمل بمفردك لان الموقع سيحتاج الكثير من المهارات سواء في تطوير الوجهه الاماميه او تطوير الوجهه الخلفيه يجب اولا دراسة منصة (منتديات فبلتن الجيل الثالث) اللذي تود انشاء مثله وتعرف جميعع المميزات و الخصائص التي يتيحها الي عملائه ساذكر بعض النصائح التي وجدتها عندما تصفحة الموقع نظام إدارة الأعضاء المتقدم. نظام إدارة المحتوى. نظام إدارة الإعلانات. نظام إدارة المجموعات. نظام إدارة الرسائل الخاصة. نظام تنبيهات جديد. نظام تحليلات جديد. نظام إدارة الوسائط الجديد. بعد تحديد المميزات يجب تحديد للغات البرمجه المطلوبه و اطارات العمل للوجهه الخلفيه مثل Laravel \ php و اللغات المطلوبه للواجهه الاماميه و اطارات العمل مثل React \ js
-
أنت تقصد عملية تخطي الـ Captcha، يمكن تحقيقها من خلال العديد من الطرق، مثلا باستخدام سكريبت بايثون، لكن بداية أريد التوضيح بأنك ترغب في تخطي نظام أمان تفاعلي يميز بين البشر والبوتات وهذا أمر لا شكّ أنه غير قانوني، ففي العادة تقوم بعرض مهمات سهلة على المستخمين يمكن للبشر حلها بسهولة، بينما يصعب على البوتات القيام بذلك. لكن لغرض تثقيفي تعليمي يمكنني إجابتك، أولا باستخدام سكريبت بايثون أولا نقوم باستخدام مكتبات خاصة ستساعد على هذا الأمر ك: Selenium: للتحكم في متصفح الويب. Tesseract: التعرف على النص من الصور. OpenCV: معالجة الصور. بعدها ننجز خطوات كتابة سكريبت بايثون: استيراد المكتبات المطلوبة. فتح متصفح الويب باستخدام Selenium. نقوم بتحديد موقع عنصر ال Captcha. نقوم بالتقاط صورة لعنصر Captcha. ثم معالجة الصورة باستخدام OpenCV. استخدام Tesseract للتعرف على النص في الصورة. إدخال النص في حقل Captcha. إرسال النموذج. بهذا الشكل: from selenium import webdriver from tesseract import image_to_string import cv2 # فتح متصفح الويب driver = webdriver.Chrome() # تحميل صفحة الويب driver.get("https://example.com") # تحديد موقع عنصر Captcha captcha_element = driver.find_element_by_id("captcha") # التقاط صورة لعنصر Captcha captcha_image = captcha_element.screenshot_as_png # معالجة الصورة image = cv2.imread(captcha_image) gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) # التعرف على النص في الصورة text = image_to_string(gray) # إدخال النص في حقل Captcha captcha_input = driver.find_element_by_id("captcha_input") captcha_input.send_keys(text) # إرسال النموذج submit_button = driver.find_element_by_id("submit") submit_button.click() # إغلاق المتصفح driver.quit() لكن في حالة ما إذا كنت تواجه مشكلة مع رموز CAPTCHA وترغب في تخطيها لذات السبب، ينبغي عليك الاتصال بمشغل الموقع أو الخدمة للحصول على المساعدة. لأن استخدام أو تطوير أدوات لتجاوز الكابتشا يمكن أن يؤدي إلى إغلاق حسابات المستخدمين وحظر الآي بي الخاص بجهازك وقد يعرضط لمشاكل أمان أخرى.
-
يوجد اكثر من اضافه في جوجل كروم تقوم بهذه المهمه ساعرض بعض الاضافات التي يمكنك استخدامها لمساعدك Buster: Captcha Solver for Humans Rumola - bypass CAPTCHA Auto CAPTCHA Solver: CAPTCHAs.IO يمكنك تثبيت اضافة Buster: Captcha Solver for Humans من هنا
-
ما تقصده هو تخطي الـ captcha، وذلك ممكن من خلال سكريبت بايثون أو جافاسكريبت للتعرف على الكابتشا ثم محاولة حلها لكن ذلك ليس أكيد 100%. ابحث على جيت هب عن captcha bypass أو captcha resolver وستجد مستودعات كثيرة، قم بتجربة البعض منها.
-
خذها كا قاعده في تعلمك في اي مجال برمجي مثل تطوير الواجهه الاماميه او تطوير الواجهه الخلفيه بعد تغيير اي اصدار سيكون المبادئ الأساسية ستكون واحده مثل بعد تغير اخر اصدار لAngular فا ستجد ان مبادئ Angular الأساسيةمثل المكونات والقوالب والتوجيهات والخدمات وحقن التبعية والتوجيه لن تتغير بشكل ملحوظ الاختلافات التي تكون باين اصدار و الاخر مثل اضافة المميزات بحيث تقدم الإصدارات الأحدث ميزات جديدة أو تحتوي على تغييرات على الميزات الموجودة, عندما تواجه مفاهيم أو بناء جملة يختلف عن الدورة التدريبية. الوثائق هي المصدر الأكثر موثوقية للحصول على أحدث المعلومات. جميع هذه التغييرات يكفي فقط ان تغطيها بقراءتك الوثائق الرسمية لاطار العمل Angular عبر موقعهم الرسمي
-
في بعض المواقع اكواد تثبيت بصري متل العمليات الحسابيه وغيرها بدي طريقة تخطي ذالك
- 3 اجابة
-
- 3