Monday, February 1, 2016

يوم مع ون شيلد







حضرت ورشة عمل فى الاسكندرية فى مساحة العمل المفتوحة بلوتو

هذه الورشة كانت بخصوص شركة ون شيلد

ون شيلد هى عبارة عن دائرة الكترونية هي غطاء للاردوينو

Arduino Shield 

و لكنها تتميز بأنها تتصل بالتليفون المحمول الحديث 

Smart Phone 






واجهة تطبيق برنامج ون شيلد






1Sheeld Circuit

دائرة ون شيلد




1Sheeld Android App
برنامج ون شيلد





You 'll find that 1Sheeld Arduino Library was imported into Arduino IDE with all its Examples .
تم إدخال مكتبة برنامج ون شيلد فى بيئة تطوير أردوينو



وصلات
Links :

1Sheeld Website:

http://www.1sheeld.com/


1Sheeld Andoid App :

https://play.google.com/store/apps/details?id=com.integreight.onesheeld


1Sheeld Arduino Library :

http://www.1sheeld.com/1sheeld_arduino_library_v1.2.zip


1Sheeld Kickstarter campaign :

https://www.kickstarter.com/projects/integreight/1sheeld-replace-your-arduino-shields-with-your-sma






It is a great Egyptian Project . Thank you 1Sheeld team.





Tuesday, October 20, 2015

التحكم فى أربعة مواتير باستخدام L293D


الثلاثاء 7 من محرم 1437 هـ                       20  أكتوبر 2015 م

بسم الله و الحمد لله و الصلاة و السلام على رسول الله سيدنا محمد صلى الله عليه و سلم

اليوم جربت فكرة التحكم فى أربعة مواتير فى اتجاه واحد باستخدام الدائرة المتكاملة

L293D

هذه الدائرة يمكنها التحكم فى موتورين تيار مستمر و كل موتور يستطيع الدوران فى الاتجاهين

و ذلك لأن هذه الدائرة من نوع

H-Bridge

و لكن أنا أريد التحكم فى أربعة مواتير لتشغيل الكوادكوبتر و لن أريد تغيير إتجاه دوران المواتير أثناء الطيران و ذلك لأن إتجاه تشغيل المواتير يكون بحيث أن الرفع من أسفل إلى أعلى





هذه هى الدائرة على محاكى الدوائر الألكترونية  بروتس


Proteus 7


و هذه هى الوصلة للملف الخاص بالدائرة


https://drive.google.com/file/d/0Byhyj_-YLEr1UC05ZVM3V0Z4ekk/view?usp=sharing



يمكنك قراءة هذه المقالة باللغة الإنجليزية من هنا

You can read this article in English

http://embedded-egypt.blogspot.com/2015/10/7-1437-20-2015-today-i-wanted-to-try.html









Friday, September 18, 2015

دائرة التحكم فى الكوادكوبتر Quadcopter Flight Control Board


الجمعة 5 ذو الحجة 1436 هـ                         18 سبتمبر 2015 م

بسم الله و الحمد لله و الصلاة و السلام على رسول الله سيدنا محمد صلى الله عليه و سلم

اليوم أكتب عن الخطوة الثانية فى مشروع الكوادكوبتر 

فى كل مشاريعى السابقة كنت أفضل الإنتهاء من المشروع كلياً ثم أنشره على مدونتى و على صفحتى على موقع 

instructables.com

هذه المرة قررت اتباع طريقة  أخرى و هى نشر كل خطوة فى المشروع لتكون حافزا ً لى فى إكمال تنفيذ هذا المشروع


هذه الخظوة  هى عمل موديل على برنامج بروتس

Proteus Model 

لدائرة التحكم فى الكوادكوبتر

Quadcopter Flight Control Board

و قد قررت بناء هذه الدائرة  باستخدام المتحكم الدقيق 

Microchip PIC 16F777

و هو به مداخل تحويل تناظرية 

Analog to Digital Converter Inputs

و أيضا ً باستخدام مجس الحركة أكسيليروميتر

Accelerometer    ADXL206

و هو عبارة عن أكسيليروميتر ثنائى المحاور 

2 Axis Accelerometer

و يخرج قياسات العجلة فى صورة تناظرية 

Analog Output

و الدائرة بها أيضاً دائرة متكاملة لتشغيل المواتير 

L293D  Motor Driver IC

و بها أيضا ً بطارية من نوع 

Li - Poly



 يمكنك قراءة هذه المقالة باللغة الإنجليزية

 You can read this post in English













Tuesday, September 8, 2015

محاولة بناء كوادكوبتر

اليوم بدأت فى بناء أول كوادكوبتر صغيرة من تصميمى و تنفيذى . فقط قمت بتركيب المواتير التى كنت قد اشتريتها من أمازون . ركبت هذه المواتير فى أذرع لتشكيل الهيكل الأولى للطائرة الكوادكوبتر .
























اليوم قمت أيضاً بتثبيت مروحة كوادكوبتر كبيرة كنت اشتريتها من أمازون أيضاً . قمت بتثبيت هذه المروحة على موتور دى سى استخرجته من قارئ سى دى روم قديم .















و قمت بتجربة هذه المروحة مع الموتور بتشغيله بـ 12 فولت من محول الكهرباء لأرى مقدار قوة دفع المروحة مع هذا النوع من الموتور

لكن للأسف وجدت أن قوة الدفع ضعيفة مقارنة بقوة الدفع الصادرة عن المروحة الصغيرة مع الموتور الصغير 

و ذلك بسبب البطء النسبى للموتور مقارنة بموتور الكوادكوبتر الصغير


لقراءة هذه المقالة باللغة الإنجليزية

To read this post in English

http://embedded-egypt.blogspot.com.eg/2015/09/quadcopter-building-attempt.html






Sunday, May 11, 2014

توصيل الأردوينو بمجس الحرارة TMP01FPZ



اشتريت دائرة أردوينو جاهزة الصنع منذ يومين و أردت تجربتها مع مجس الحرارة التناظرى

TMP01FPZ










المكونات 


دائرة الأردوينو أونو مع الكابل الخاص بها

Arduino UNO Board

مجس الحرارة 

TMP01FPZ

لوحة بريد بورد

Breadboard

أسلاك صغيرة 

























توصيل الدائرة 

الدائرة بسيطة جدا . 

قم بوضع مجس الحرارة على دائرة البريد بورد

و قم بتوصيل طرف الفولت الموجب - تغذية مجس الحرارة 

Vcc

بطرف الفولت 

5 volt

على دائرة الأردوينو باستخدام الأسلاك

و قم بتوصيل طرف 

Gnd

فى مجس الحرارة بطرف 

Gnd 

على دائرة الأردوينو

 و قم بتوصيل طرف الخرج التناظرى من المجس

Analog Output 

بطرف 
A0

على دائرة الأردوينو









 البرنامج : كود  الأردوينو

 يقوم البرنامج فى البداية بتعريف منفذ الدخل التناظرى  فى الأردوينو

Analog Input ------>     A0


 ثم يقوم بقراءة القيم التناظرية من مجس الحرارة باستمرار 

ثم يتم تحويل هذه القيم من أرقام إلى قيم تمثل قراءة درجة الحرارة المقاسة بالدرجة السلسيوس

ملحوظة : هذه الخطوة تمت بناءاً على القيم المكتوبة و المواصفات الخاصة بالمجس فى ملف المواصفات 

Sensor Data Sheet

 و منها قمت برسم الخط البيانى الذى يمثل استجابة المجس لدرجة الحرارة المحيطة ثم حولته إلى المعادلة فى البرنامج


 ثم يقوم البرنامج بإرسال القيم إلى المنفذ المتسلسل 




يمكنك قراءة هذه المقالة باللغة الانجليزية هنا

You can this post in English


http://embedded-egypt.blogspot.com/2014/05/arduino-temperature-sensor-tmp01fpz.html



يمكنك قراءة هذه المقالة على صفحتى بموقع
instructables.com

http://www.instructables.com/id/Ten-Minutes-Arduino-Temprature/




Wednesday, May 7, 2014

مطلوب فوراً للتعيين فى شركة برمجيات مضمنة فى القاهرة

مطلوب فوراً للتعيين فى شركة برمجيات مضمنة فى القاهرة


Urgently Required for an Embedded Software Company in Cairo , Egypt
Embedded Software Engineer
required skills
- Around 2-4 years of real embedded development experience.
- Proven experience for embedded development in areas of 'Ethernet Communication', 'USB Communication'.
- Proven experience in Real Time Operation System usage within Embedded Project (Any Known RTOS).
- Highly preferable to have experience with Embedded Linux development.
- Preferable to have experience with GSM module interfacing & GPS module interfacing.
Please send the CVs on
recruitment@hlogictec.com

Thursday, March 6, 2014

Pinguino Egypt - إصنع بنفسك دائرة مشابهة للأردوينو











قرأت مؤخرا جداً عن دائرة الأردوينو و أعجبتنى فكرة عمله . فبرغم استخدامى لدوائر البرمجة المضمنة من شركات متخصصة من قبل و احتوائها على كل المكونات المطلوبة لبدء تعلم البرمجة بالمتحكم الدقيق الذى تنتجه الشركة المصنعة مثل برمجة ملف التشغيل 
HEX File
باستخدام مخرج الـ
USB 
و غير ذلك من الوسائل المساعدة للبرمجة مثل الـ
Debugger

إلا أن سهولة الأردوينو و كونه مفتوح المصدر فى الدوائر ( هاردوير ) و البرامج ( سوفت وير ) و انتشار البرامج و الدوائر المصنعة من الأفراد و الشركات و التى يمكن تشغيلها مع الأردوينو و كمية البرامج المنفذة باستخدامه ( بحيث يمكنك تخيل أن كل ما يمكن تنفيذه باستخدام الأنظمة المضمنة بل و باستخدام الدوائر الألكترونية بصفة عامة يمكن تنفيذه باستخدام الأردوينو و بالإستعانة بالبرامج و الدوائر و الأمثلة التى صنعها الأفراد من قبل على شبكة الانترنت ) و بحيث يتصور من ليس له خبرة بالأنظمة المضمنة أن تعريف الأنظمة المضمنة هو الأردوينو و لأن انتشار برامجه و دوائره بنفس انتشار برامج المصدر المفتوح

لذلك قررت أن أصمم دائرة مشابهة للأردوينو و تحتوى على المعالج الدقيق من نوع 
Microchip PIC 

لذلك بدأت فى البحث عن دائرة مشابهة للأردوينو باستخدام هذه العائلة من المتحكمات الدقيقة ووجدت مشروع 

Pinguino

و هو مشروع بدأ فى فرنسا و أصبح عالمياً مثلما بدأ الأردوينو فى إيطاليا و أصبح مشروعاً عالمياً

تماماً مثل الأردوينو يوجد الكثير من دوائر البينجوينو التى تستخدم أنواعاً مخلتفة من المتحكمات الدقيقة من عائلة 
Microchip

  و قد قررت البدء فى بناء البنجوينو باستخدام المتحكم الدقيق 
PIC 18F4550


















المكونات المستخدمة



1          Copper Board ( VeroBoard or Stripboard or Perfboard )
1          PIC 18F4550
1          40 Pin IC Socket
1          USB Type B Socket
1          20MHz Crystal
1          220nF Capacitor
1          100nF Capacitor
2          22pF Capacitors
1          Push Button
1          Dip Switch
1         10k Ohm Resistor
1         7805 Voltage Regulator
1         9v Battery Connector
1         Female Pin Header
1         1N4001 Diode ( or any other general purpose diode )
2         Rows of Pin Headers














هذه هى الدائرة كما فى الموقع






و هذه هى الدائرة التى قمت ببنائها



















ابدأ لحام المكونات



































 استخدمت قطعة كبيرة من اللوحة النحاسية المثقبة الموصلة على شكل خطوط و تسمى 

verro board

و لم أقم بقطعها إلا عندما انتهيت من لحام المكونات لأننى لم أعلم مساحة القطعة التى تشغلها المكونات

و بعد أن انتهيت من لحام المكونات قمت بقص اللوحة حول المكونات بمنشار أركت 










































تثبيت برنامج البوت لودر
Bootloader


برنامج البوت لودر هو البرنامج الأولى الذى يمكن المتحكم الدقيق من الإتصال بجهاز الكمبيوتر عن طريق منفذ يو إس بى

USB

و أيضا يمكن المتحكم الدقيق من برمجة نفسه ذاتيا و تحميل البرنامج الذى يستقبله من الكمبيوتر عن طريق منفذ يو إس بى


هذا هو رابط تحميل ملفات برنامج البوت لودر المناسب لجميع أنواع المتحكمات الدقيقة المستخدمة فى دائرة بينجوينو مع سرعات الكريستالات المختلفة

استخدمت هنا سرعة كريستال 20 ميجا هرتز مع المتحكم الدقيق

PIC 18F4550

النسخة   

4.14







المتحكم الدقيق 
18F4550
 هو متحكم دقيق ذاتى البرمجة بمعنى أنه يستطيع تشغيل برنامج يقوم بتحميل برنامج آخر جديد و تحديث وظيفته ليقوم بوظيفة و برنامج جديد بدون استخدام دائرة برمجة 
Programmer

فى البداية عندما لا يوجد برنامج على المتحكم الدقيق لا يستطيع الإتصال بالكمبيوتر بوصلة يو إس بى و لكن يمكن برمجته عن طريق دائرة برمجة توصل بالكومبيوتر بالمنفذ المتسلسل 
Serial Port
أو دائرة برمجة تتصل بالكومبيوتر بمنفذ يو إس بى 
USB
ثم بعد ذلك تضع المتحكم الدقيق فى دائرة البنجوينو و تستطيع أن تجعله يتصل مباشرة بمنفذ يو إس بى 

تحتاج القيام بهذه الخطوة مرة واحدة فقط . و بمجرد تحميل المتحكم الدقيق ببرنامج بوت لودر البنجوينو و وضعه فى الدائرة لن تحتاج إلى دائرة برمجة أخرى

  لقد قمت بتحميل برنامج  بوت لودر البنجوينو باستخدام دائرة برمجة بسيطة صنعتها بنفسى و تتصل بالكومبيوتر بالمنفذ المتسلسل

Serial Port

تستطيع أنت أيضا بناء هذه الدائرة فهى بسيطة و سهلة  و موجودة على المدونة فى هذا الرابط




http://www.instructables.com/id/18F4550-Programmer-in-Ten-years/



















قمت باستخدام برنامج 

PicPGM  

مع دائرة البرمجة 

JDM programmer

لتحميل برنامج بوت لودر البنجوينو 


Bootloader_v4.13_18f4550_X20MHz.hex






بعد تحميل بوت لودر البنجوينو تستطيع أن تضع المتحكم الدقيق فى الدائرة بعد بنائها و بذلك فقد أصبحت جاهزة للإستخدام

بذلك تكون قد أكملت بناء الدائرة من ناحية الهاردوير



 Pinguino IDE Installation                                                             تثبيت بيئة برمجة بنجوينو   



   بيئة برمجة بنجوينو هو جزء السوفت وير من المشروع و هو الجزء الذى يتم فيه كتابة تطبيقات البنجوينو الفعلية ثم تحميلها على دائرة البنجوينو








خطوات  تثبيت بيئة برمجة بنجوينو على ويندوز إكس بى


Here is how to install the Pinguino IDE on Windows Xp

http://wiki.pinguino.cc/index.php/Windows


و هذه هى الخطوات الفعلية التى قمت بها




1-  Download and extract Pinguino IDE for window form here

https://code.google.com/p/pinguino32/downloads/detail?name=Pinguino-IDE-snapshot-i386-unknown-win32-20131209-rev959.7z&can=2&q=

2- Download vcredist_x86.exe (for win32) --- If you encounter the message of not existing msvc*90.dll in Windows,it has to be installed from here

http://www.microsoft.com/en-us/download/details.aspx?id=5582&WT.mc_id=MSCOM_EN_US_DLC_DETAILS_131Z4ENUS22004



3- Download and Install Python from here:

http://www.python.org/ftp/python/2.6.6/python-2.6.6.msi

4- Download and install wxPython 2.8.12.1(unicode) for Python 2.6
http://downloads.sourceforge.net/wxpython/wxPython2.8-win32-unicode-2.8.12.1-py26.exe



5- Download and install pyusb-1.0.0a2-py2.6

http://sourceforge.net/projects/pyusb/files/PyUSB%201.0/1.0.0-alpha-2/pyusb-1.0.0a2.zip/download







To install Pyusb module , you have to follow the next steps :
- Add python path to the PATH variable ..  for example   c:\python27
- Extract pyusb folder on any location of your hard disk
- Open the command prompt and change directory to the pyusb directory.
- Run the command python setup.py install
- Make sure that the Pyusb module is installed by python directory and look for site-packages folder .. for example :  C:\Python27\lib\site-packages if you can find usb folder inside then pyusb is successfully installed.
- You can now remove the Pyusb source folder.



6 - Download and install libusb-win32

http://downloads.sourceforge.net/libusb-win32/libusb-win32-filter-bin-0.1.12.1.exe?modtime=1174387137&big_mirror=0

(Don't discard this file yet. In some cases the library has to be installed twice to work.)



7- Download and install pyserial

http://sourceforge.net/projects/pyserial/files/pyserial/2.5/pyserial-2.5.win32.exe/download


Now , with a printer USB cable, connect your Pinguino board to the PC. You 'll get the Found New Hardware popup message.















8- Download and Extract Driver from here:

http://www.hackinglab.org/pinguino/download/driver%20pinguino%20windows/driver%20pinguino%20windows.tar.gz


Now, from the folder of Pinguino IDE ( ..\PINGUINO\x4-easy-rev959\ ) start pinguino.exe file.

That's it.

Now you can open any example or Arduino sketch, compile it and then upload it into your Pinguino board and start your application.

















HELLO WORLD


The example here

http://wiki.pinguino.cc/index.php/Basics#Hello_World

Show you how to send text on the USB port using CDC emulated RS232

Just copy and paste the code

/*
-------------------------------------------------
HELLO WORLD CDC
-------------------------------------------------
*/

void setup()
{
   // put your setup code here, to run once:
}

void loop()
{
   // put your main code here, to run repeatedly:
  if (CONTROL_LINE) CDC.println("\n\r Hello World !!!");


}




And windows xp will ask for a driver software .

You can find it under Pinguino IDE Folder

..\PINGUINO\x4-easy-rev959\extra\drivers\CDC


Run Hyper terminal 

with the following settings:




Choose the com port which the Pinguino driver you installed has created. ( ex. Com 4 )





Speed (Baud): 115200
Data bits: 8
Stop bits: 1
Parity: None
Flow control: XON/XOFF






You can read this article in English



http://embedded-egypt.blogspot.com/2014/02/pinguino-egypt-do-it-yourself-pic.html


Here is the article on my instructables.com page :

http://www.instructables.com/id/Pinguino-Egypt-PIC-Based-Arduino/



Thank you for visiting my blog. Have fun.