সুচিপত্র:
- ধাপ 1: যন্ত্রাংশ সংগ্রহ করুন
- ধাপ 2: কিছু সফটওয়্যার ডাউনলোড এবং ইনস্টল করুন
- ধাপ 3: একটি ডাউনলোড সার্কিট তৈরি করুন
- ধাপ 4: চিপস প্রোগ্রাম করুন
- ধাপ 5: Tx সার্কিট তৈরি করুন
- ধাপ 6: Rx সার্কিট তৈরি করুন
- ধাপ 7: কিছু VB.Net কোড লিখুন
- ধাপ 8: কিছু কোড যোগ করুন
- ধাপ 9: উভয় পিসিতে প্রোগ্রাম চালান
- ধাপ 10: কোডের স্ক্রিনশট
- ধাপ 11: স্ক্রিনশট 2
- ধাপ 12: স্ক্রিনশট 3
- ধাপ 13: স্ক্রিনশট 4
- ধাপ 14: স্ক্রিনশট 5
- ধাপ 15: স্ক্রিনশট 6
ভিডিও: বিশ্বব্যাপী মাইক্রোকন্ট্রোলার লিঙ্ক $ 20: 15 ধাপের জন্য
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:03
অফিস থেকে আপনার বাড়ির থার্মোস্ট্যাট নিয়ন্ত্রণ করুন। একটি সুইচ ফ্লিক করে বিশ্বের যে কোন স্থান থেকে একটি স্প্রিংকলার চালু করুন। এই নির্দেশাবলী দেখায় কিভাবে ইন্টারনেটের মেরুদণ্ড এবং কিছু সাধারণ VB. Net কোড ব্যবহার করে দুই বা তার বেশি $ 4 মাইক্রোকন্ট্রোলারগুলিকে লিঙ্ক করতে হয়।: //www.instructables.com/id/Control-real-world-devices-with-your-PC/ এইবার আমরা একটি VB. Net প্রোগ্রামের সাথে একটি মাইক্রোকন্টোলার কথা বলছি, তারপর একটি FTP ওয়েবসাইটে, অন্য VB. Net- এ মানুষের হস্তক্ষেপ সহ বা ছাড়াই বিশ্বের যে কোন জায়গায় প্রোগ্রাম এবং সেখান থেকে একটি দ্বিতীয় মাইক্রোকন্ট্রোলার। যদি তারা একে অপরের সাথে কথা বলতে না পারে তবে ম্যাট্রিক্সের মেশিনগুলি কীভাবে অন্যদের হাতে নেবে?
ধাপ 1: যন্ত্রাংশ সংগ্রহ করুন
অনেকগুলি অংশ পিসি কন্ট্রোল ইন্সট্রাকটেবল https://www.instructables.com/id/Control-real-world-devices-with-your-PC/ এর মতোই এবং এটি চেষ্টা করার আগে এটি সম্পূর্ণ করার পরামর্শ দেওয়া হচ্ছে দুটি মাইক্রোকন্ট্রোলার লিঙ্ক করতে। যদিও একটি সার্ভকে নিয়ন্ত্রণ করার জন্য একটি পাত্র ব্যবহার করা বেশ সম্ভব, এই সময় আমরা সহজ কিছু করতে যাচ্ছি - একটি নেতৃত্বে একটি সুইচ চালু। সুইচটি সহজেই একটি ট্যাংক লেভেল সেন্সর হতে পারে এবং এর নেতৃত্বে একটি নদীর কাছে পাম্প হতে পারে কিন্তু প্রথমে কিছু সহজ কাজ করা যাক। ed.co.uk/picaxe/ (UK), PH Anderson https://www.phanderson.com/ (USA) এবং Microzed https://www.microzed.com.au/ (অস্ট্রেলিয়া)। এই চিপগুলি $ 4US এর নিচে। এর মধ্যে দুটি: প্রোটোবার্ড, 9V ব্যাটারি এবং ব্যাটারি ক্লিপ, 10k রোধক, 22k প্রতিরোধক, 33uF 16V ক্যাপাসিটর, 0.1uF ক্যাপাসিটর, 7805L কম শক্তি 5V নিয়ন্ত্রক, তার (কঠিন কোর টেলিফোন/ডেটা তারের যেমন Cat5/6), LED, 1k প্রতিরোধক। এর 1: D9 মহিলা সকেট এবং কভার এবং 3 (বা 4) কোর ডেটার তারের 2 মিটার (ডাউনলোডের জন্য) এবং একটি টগল সুইচ। 9 টি পিন সিরিয়াল পোর্ট সহ 2 টি কম্পিউটার (যদিও একটি কম্পিউটারে ডিবাগ করা যায়) এবং একটি ইন্টারনেট সংযোগ। কোন সিরিয়াল পোর্ট ছাড়া কম্পিউটারের জন্য, একটি USB থেকে সিরিয়াল ডিভাইস https://www.rev-ed.co.uk/docs/axe027.pdf এবং একটি ছোট স্টেরিও সকেট।
ধাপ 2: কিছু সফটওয়্যার ডাউনলোড এবং ইনস্টল করুন
আমাদের বিনামূল্যে VB. Net এবং picaxe কন্ট্রোলার সফটওয়্যার লাগবে এবং যদি আপনি পিসি কন্ট্রোলার ইন্সট্রাকটেবল করে থাকেন তাহলে আপনার কাছে ইতিমধ্যেই VB. Net (Visual Basic Express) https://msdn2.microsoft.com/en থেকে পাওয়া যাবে -us/express/aa718406.aspx picaxe সফটওয়্যারটি https://www.rev-ed.co.uk/picaxe/ থেকে পাওয়া যায় ডাউনলোড করার জন্য আপনাকে মাইক্রোসফটের সাথে নিবন্ধন করতে হবে -যদি এটি একটি সমস্যা হয় তাহলে একটি জাল ইমেইল ব্যবহার করুন অথবা অন্যকিছু. আমি প্রকৃতপক্ষে আমার আসল ইমেইল প্রদান করতে সহায়ক বলে মনে করি কারণ তারা মাঝে মাঝে আপডেট পাঠায়। যেখানে শিক্ষার্থীরা সাধারণত কয়েক ঘন্টার মধ্যে প্রশ্নের উত্তর পেতে পারে। ফোরামটি এমনকি সহজ প্রশ্নগুলির খুব বোঝার কারণ কিছু ছাত্র এখনও প্রাথমিক বিদ্যালয় স্তরে রয়েছে। দয়া করে সাহায্য চাইতে ভয় পাবেন না!
ধাপ 3: একটি ডাউনলোড সার্কিট তৈরি করুন
এই ডাউনলোড সার্কিটটি একটি পিক্যাক্স চিপ, কয়েকটি প্রতিরোধক, একটি নিয়ন্ত্রক এবং একটি 9V ব্যাটারি ব্যবহার করে। পিক্যাক্স ডকুমেন্টেশন/সাহায্যে আরও তথ্য পাওয়া যায় যা প্রোগ্রামের হেল্প মেনুতে আসে। সার্কিটটি তৈরি করতে মাত্র কয়েক মিনিট সময় লাগবে যখন সমস্ত যন্ত্রাংশ হাতে আসবে। একবার একটি চিপ প্রোগ্রাম করা হলে এটি EEPROM এ তার প্রোগ্রামটি ধরে রাখে এমনকি বিদ্যুৎ বন্ধ থাকা সত্ত্বেও। যেহেতু আমরা দুটি চিপ প্রোগ্রামিং করছি এটি চিপসকে লেবেল করার যোগ্য হতে পারে যাতে আপনি জানেন যে কোনটি। আপনি সর্বদা ফিরে যেতে পারেন এবং একটি লিঙ্ক সরিয়ে এবং একটি প্রতিরোধক সরিয়ে একটি চিপ পুনরায় প্রোগ্রাম করতে পারেন।
আমি এটাও যোগ করতে পারি যে পিক্যাক্সগুলি 3 এএ ব্যাটারিতে সুখে চালায়। একটি 5V নিয়ন্ত্রিত সরবরাহ এনালগ ইনপুট চালানোর জন্য দরকারী কারণ রেফারেন্স ভোল্টেজগুলি পরিবর্তিত হয় না, তবে সাধারণ অন/অফ সার্কিটগুলির জন্য একটি নিয়ন্ত্রিত সরবরাহের প্রয়োজন হয় না। এই পরিস্থিতিতে 5V রেগ বাদ দেওয়া যেতে পারে।
ধাপ 4: চিপস প্রোগ্রাম করুন
আমরা একটি প্রোগ্রাম Tx এবং একটি Rx কল করব। Tx হল কন্ট্রোলিং চিপ এবং এর একটি সুইচ এবং একটি লিড আছে। Rx এরও একটি নেতৃত্ব আছে। যখন সুইচ পরিবর্তিত হয় সংকেতটি Tx থেকে Rx এ যায়, নেতৃত্ব পরিবর্তন করে এবং দ্বিতীয় পরিবর্তনশীলও পরিবর্তন করে যা তারপর Tx- এ ফিরে যায়। সুতরাং সুইচটি ফ্লিক করুন এবং এক মিনিটেরও কম সময়ে উভয় সার্কিটের নেতৃত্বাধীন পরিবর্তনগুলি নির্দেশ করে যে বার্তাটি সেখানে পৌঁছেছে এবং Rx নতুন সুইচ অবস্থানে কাজ করছে। সহজ স্তরে পিক্যাক্সে 14 টি একক-বাইট রেজিস্টার রয়েছে। যখন একটি ভার্চুয়াল নেটওয়ার্ক তৈরি হয় তখন আমরা সেই সমস্ত রেজিস্টারগুলিকে একসাথে লিঙ্ক করি তাই যদি একটি পিক্যাক্সে একটি বাইট পরিবর্তন হয় তবে এটি সমস্ত পিক্যাক্সে পরিবর্তিত হয়। স্পষ্টতই যদি দুটি পিক্যাক্স একই বাইট পরিবর্তন করার চেষ্টা করে তবে এটি খুব বিভ্রান্তিকর হবে তবে যদি প্রতিটি পিক্যাক্স কেবল একটি বাইট পরিবর্তন করে তবে অন্য সমস্ত পিক্যাক্সগুলি সেই পরিবর্তনটি দেখতে পারে এবং এটিতে কাজ করতে পারে। একটি নির্দিষ্ট বাইট শুধুমাত্র একটি পিক্যাক্স দ্বারা পরিবর্তিত হলে সাধারণ বার্তাগুলি পিছনে এবং এগিয়ে দেওয়া যেতে পারে। একটি পাত্র একটি রেজিস্টারে মান পরিবর্তন করতে পারে এবং এক বা একাধিক পিকাক্স বুঝতে পারে যে পরিবর্তন এবং একটি সরো বা যাই হোক না কেন এবং একটি হিটার চালু করুন। একটি দ্বিতীয় নিবন্ধন ঘরের তাপমাত্রা ফেরত পাঠাতে পারে। প্রোগ্রামগুলিকে পিক্যাক্স প্রোগ্রামারে কপি এবং পেস্ট করুন এবং পিক্যাক্স প্রোগ্রামারের মধ্যে থেকে নীল ডাউনলোড তীর ব্যবহার করে তাদের প্রতিটি চিপে ডাউনলোড করুন। Tx: main: serin 3, N2400, ("Data"), b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13 'কম্পিউটার থেকে প্যাকেট পান যদি pin2 = 0 তারপর 'সুইচটি পরীক্ষা করুন এবং রেজিস্টার b0 সেট করুন b0 = 0 অন্যথায় b0 = 1 এন্ডিফ যদি b1 = 0 হয় তাহলে' অন্যান্য পিক্সেক্স b1 সেট করে b0 লো 1 '' অন্য হাই 1 'এন্ডিফ সেরাউট 0, এন 2400, ("ডেটা", b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13) "ডেটা"), b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13 'কম্পিউটার থেকে প্যাকেট পান b1 = b0' রেজিস্টার b1 পরিবর্তন করুন b1 যদি b1 হয় = 0 তারপর কম 1 'নেতৃত্বে অন্য উচ্চ 1 নেতৃত্বে endif serout 0, N2400, ("ডেটা", b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13) 'কম্পিউটার গোটো মেইন -এ ফেরত পাঠান
ধাপ 5: Tx সার্কিট তৈরি করুন
যদি আপনি একটি ওয়ার্কিং সার্কিট এবং একটি প্রোগ্রামিং সার্কিটের মধ্যে পিছনে উল্টে যাচ্ছেন তবে সংযোগটি লেগ 2 এবং 22k রেসিস্টরের অবস্থান 2 লেগ থেকে 4 এ পরিবর্তন করতে ভুলবেন না। অথবা আপনি একটি ডেডিকেটেড ডাউনলোড সার্কিট তৈরি করতে পারেন এবং চিপগুলি সরাতে পারেন জুড়ে শুধু লক্ষ্য করুন যে একটি সার্কিট চলছে বা ডাউনলোড হচ্ছে কারণ এটি বেশ বিভ্রান্তিকর হতে পারে। বিশেষ করে, লক্ষ্য করুন যে একটি চলমান সার্কিট কাজ করবে না যদি লেগ 2 ভাসমান থাকে - এটি গ্রাউন্ড করা প্রয়োজন। লেগ 2 হল ডাউনলোড পিন এবং যদি এটি ভাসতে থাকে তবে এটি ফ্লোরো লাইট থেকে বিপথগামী আরএফ তুলে নেয় এবং চিপ মনে করে অন্য একটি প্রোগ্রাম ডাউনলোড হচ্ছে।
এটি পিক্যাক্স নামকরণের কথাও উল্লেখযোগ্য যা একটি শারীরিক পিনকে একটি পা এবং একটি ভার্চুয়াল পিনকে একটি পিন বলে। এইভাবে কোডে পিন 2 এ একটি আউটপুট আসলে ফিজিক্যাল লেগ 5 এ একটি আউটপুট।
ধাপ 6: Rx সার্কিট তৈরি করুন
এই সার্কিটটি প্রায় ট্রান্সমিটারের মতই - এটির কোন সুইচ নেই।
ধাপ 7: কিছু VB. Net কোড লিখুন
আমি কোডটি সংকলন করতে পারতাম এবং এই প্রোগ্রামটি একটি সংকলিত.exe হিসাবে উপলব্ধ করতে পারতাম কিন্তু কিছু VB. Net শেখা এত অবিশ্বাস্যভাবে দরকারী যে এটি ধাপে ধাপে এটির মূল্য। যদি আপনি এটি দুটি ভিন্ন কম্পিউটারে চালাচ্ছেন তবে আপনি একটি.exe এ প্রোগ্রামটি তৈরি করতে পারেন যা একটি ছোট সেটআপ প্রোগ্রাম তৈরি করে যা দ্বিতীয় কম্পিউটারে ইনস্টল করা যায়। অথবা আপনি উভয় কম্পিউটারে VB. Net লাগাতে পারেন এবং VB. NetLet এর মধ্যে থেকে প্রোগ্রামগুলি চালাতে পারেন আপনি ধরে নিচ্ছেন কিভাবে https://www.instructables.com/id/S1MMU2XF82EU2GT এর ধাপ 7 এবং 8 থেকে একটি নতুন VB.net প্রকল্প খুলতে হয়। /ফাঁকা ফর্মে টুলবার থেকে নিম্নলিখিত উপাদানগুলি যোগ করুন এবং দেখানো হিসাবে লোকেশনে ফর্মটিতে রাখুন। লেবেল এবং টেক্সট বক্সের জন্য, পাঠ্য সম্পত্তি (নীচের ডানদিকে) যা প্রয়োজন তা পরিবর্তন করুন। টাইমারের সেটিংস নিয়ে চিন্তা করবেন না - আমরা সেগুলি কোডে পরিবর্তন করব কিন্তু একটি টাইমার লাগাতে ভুলব না You বড় টেক্সট বক্স একটি RichTextBox এবং ছোট তিনটি সাধারণ টেক্সটবক্স। অর্ডারের ক্ষেত্রে আমরা ফর্মের শীর্ষে শুরু করছি এবং নিচে চলে যাচ্ছি। যদি আপনি কিছু ছেড়ে যান তবে কোডে একটি ত্রুটি হবে যা কিছু ধরণের সূত্র দিতে হবে দয়া করে টেক্সটবক্স 3 এর জন্য একটি এলোমেলো ফাইলের নাম চয়ন করুন - এটি আপনার অনন্য গোষ্ঠীর নাম এফটিপি সার্ভারে এবং স্পষ্টতই যদি আমরা সবাই ব্যবহার করি একই নাম তারপর ডাটা সব গুলিয়ে যাবে! ------------------------------ NotesLabel1 ------------------ Picaxe যোগাযোগ লেবেল 2 ------------------ এফটিপি স্ট্যাটাস লেবেল 3 ------------------ স্ট্যাটাস লেবেল 4 ---------- -------- Picaxe RegistersLabel5 ------------------ নিবন্ধন 0-13Label6 ------------------ মান 0-255Label7 ------------------ FTP লিঙ্ক ফাইলের নাম টেক্সটবক্স 1 ---------------- 0 -------- -------------------------------------- 0 একটি শূন্য নয় একটি OTextbox2 ----- ----------- 0 টেক্সটবক্স 3 ---------------- মাইফাইলের নাম --------------------- ---------- পরিবর্তন করুন যাতে কোন সংঘর্ষ না হয়! বাটন 1 ------------------ সংশোধন করুন
ধাপ 8: কিছু কোড যোগ করুন
ফর্ম ভিউ এবং কোড ভিউয়ের মধ্যে উল্টানো বোতামের অবস্থানের জন্য অন্যান্য নির্দেশযোগ্য ধাপ 12 দেখুন। কোড ভিউতে যান এবং নিম্নলিখিত কোডটি পেস্ট করুন ওয়ার্ডর্যাপ সমস্যার কারণে যদি কোন লাইন সঠিকভাবে কপি না করে থাকে তাহলে ত্রুটি বার্তা না যাওয়া পর্যন্ত স্পেস মুছে দিন। আমি বেশিরভাগ লাইন মন্তব্য করার চেষ্টা করেছি তাই কোডটি অন্তত কিছু বোধগম্য। পাবলিক ক্লাস বিট ডিলিট করুন যাতে এই পেস্ট করার আগে টেক্সট ফাঁকা থাকে - এই কোডটিতে ইতিমধ্যেই একটি পাবলিক ক্লাস আছে। যদি একটি টেক্সট বক্সের মতো বস্তু ফর্মটিতে রাখা না হয় বা ভুল নাম থাকে তাহলে এটি টেক্সট কোডে আসবে তার নীচে একটি স্কুইগলি নীল রেখা। আমদানি সিস্টেম। বাম (এবং ডান) স্ট্রিং পাবলিক ক্লাস ফর্ম 1 পাবলিক ডিক্লেয়ার সাব স্লিপ লিবি "কার্নেল 32" (বাইভাল ডাব্লিউ মিলিসেকেন্ডস ইন্টিজার হিসাবে) 'ঘুমের বিবৃতিগুলির জন্য ডিম উইথ ইভেন্টস সিরিয়ালপোর্ট নতুন আইও। পোর্টস হিসাবে। যেহেতু বাইট 'b0 থেকে b13 নিবন্ধন করে Dim ModifyFlag as Boolean Private Sub Form1_Load (ByVal sender as Object, ByVal e As System. EventArgs) আমাকে পরিচালনা করে। এই সমস্ত আবর্জনা সামগ্রী প্রয়োজন -.net এটি স্বয়ংক্রিয়ভাবে রাখে Timer1. Enabled = True 'কোডটি ডিফল্ট হিসাবে মিথ্যা হিসাবে রাখুন যখন টাইমার 1 তৈরি হয়। অন্তর = 20000' প্রতি 20 সেকেন্ডে PictureBox1. BackColor = Color. Gray 'কমস বক্স দিয়ে শুরু করুন ধূসর PictureBox2. BackColor = Color. Grey ModifyFlag = False' যদি একটি মান ম্যানুয়ালি পরিবর্তন করে তাহলে s kip ডাউনলোড RichTextBox1. Multiline = True 'তাই একাধিক লাইন প্রদর্শন করতে পারে কল DisplayPicaxeRegisters ()' 14 রেজিস্টার কল কল ReadFTPFilename () 'ডিস্ক থেকে ফাইলের নাম পড়ুন (প্রতি 20 সেকেন্ডে সংরক্ষিত) শেষ সাব সাব সিরিয়াল TxRx () ডিম ডেটাপ্যাকেট (0 থেকে 17) বাইট হিসাবে 'সম্পূর্ণ ডেটা প্যাকেট "ডেটা" +14 বাইট ডিম আই ইজ ইন্টিজার' i সবসময় লুপ ইত্যাদির জন্য দরকারী i = 0 থেকে 3 DataPacket (i) = Asc (মিড ("ডেটা", i + 1, 1)) 'প্যাকেটে "ডেটা" শব্দটি যোগ করুন পরবর্তী জন্য i = 0 থেকে 13 DataPacket (i + 4) = PicaxeRegisters (i)' প্যাকেটে সমস্ত বাইট যোগ করুন পরবর্তী যদি serialPort. IsOpen তারপর serialPort. Close (সিরিয়ালপোর্টের সাথে যদি ইতিমধ্যেই শেষ হয় তবে শেষ হলেই শেষ হয়ে যাবে। PortName = "COM1" 'বেশিরভাগ নতুন কম্পিউটার com1 তে ডিফল্ট হবে কিন্তু সিরিয়াল মাউস সহ যেকোনো 1999 এর কম্পিউটার সম্ভবত com2 তে ডিফল্ট হবে। BaudRate = 2400' 2400 হল সর্বোচ্চ গতি ছোট picaxes। সমতা = IO. Ports. Parity. None 'no parity. DataBits = 8' 8 bit যদি কোন উত্তর না থাকে তাহলে 1 সেকেন্ডে ds আউট হয়ে যায়। Open () 'সিরিয়াল পোর্ট খুলুন। ডাটা স্ট্রীম দীর্ঘ হলে ডেটা ফিরে আসার জন্য সর্বনিম্ন অপেক্ষা করতে হবে এবং আরও বেশি পড়ুন। (i - 4) = DataPacket (i) 'নতুন ডাটা প্যাকেটটিকে রেজিস্টার অ্যারেতে সরান Next PictureBox1. BackColor = Color. GreenYellow' ব্যতিক্রম ধরা পড়ার মতো Export PictureBox1. BackColor = Color. Red 'কাজ করছে না শেষ সাব সাব FTPUpload চেষ্টা করুন (ByVal ফাইলের নাম হিসেবে স্ট্রিং) Dim localFile As String 'স্থান সংরক্ষণ করুন ডেটা রিমোট ফাইল হিসাবে স্ট্রিং' ফাইলের নাম কেস সংবেদনশীল এটি সত্যিই গুরুত্বপূর্ণ কনস্ট হোস্ট হিসাবে স্ট্রিং = "ftp://ftp.0catch.com" 'নোট 0 একটি শূন্য নয় একটি অক্ষর O Const ব্যবহারকারীর নাম As String = "picaxe.0catch.com" Const password As String = "picaxetester" Dim URI as String localFile = ফাইলের নাম 'হয়তো প্রয়োজন নেই কিন্তু যদি কোন লোকেশন সংজ্ঞায়িত করা হয় যেমন c: / mydirectory সহজেই এই ভাবে যোগ করতে পারে remoteFile = "/" + ftp সার্ভারের ফাইলের নাম ফাইল প্রয়োজন "/" সামনে যোগ করা হয়েছে URI = host + remoteFile Dim ftp কে সিস্টেম হিসেবে চেষ্টা করুন. Net. FtpWebRequest = CType (System. Net. FtpWebRequest. Create (URI), System. Net. FtpWebRequest) ftp. Credentials = নতুন সিস্টেম। নেট। একবার সংযোগ বিচ্ছিন্ন করা হলে ftp। পদ্ধতি = System. Net. WebRequestMethods. Ftp. UploadFile 'ফাইল পাঠানো শুরু করুন Dim fs নতুন FileStream (localFile, FileMode. Open) হিসাবে 0, fs. Length) fs. Close () 'ফাইল বন্ধ করুন Dim requestStream As Stream = ftp. GetRequestStream ()' ftp link requestSt শুরু করুন পুনরায় লিখুন। টেক্সট বলছে এটি সংযুক্ত 'PictureBox2. BackColor = Color. Red' বাক্সটি কোন সংযোগ না থাকায় লাল হয়ে যায়। লেবেল 2। 'স্থানীয় ফাইল থেকে রিমোট ফাইল ডাউনলোড করুন ডিম লোকাল ফাইলে স্ট্রিং' ডাটা স্টোর করার জন্য ডিম রিমোট ফাইল স্ট্রিং 'ফাইলের নাম কেস সংবেদনশীল এটি সত্যিই গুরুত্বপূর্ণ কনস্ট হোস্ট হিসাবে স্ট্রিং = "ftp://ftp.0catch.com" কনস্ট ব্যবহারকারীর নাম স্ট্রিং = "পিক্যাক্স । প্রকৃত অবস্থান remoteFile = "/" + ফাইলের নাম 'দূরবর্তী FTP অবস্থানে যোগ করা হয়েছে URI = হোস্ট + remoteFile' মেক আপ সম্পূর্ণ ঠিকানা Dim ftp As System. Net. FtpWebRequest = CType (System. Net. FtpWebRequest. Create (URI), System. Net. FtpWebRequest) ftp. Credentials = New System. Net. NetworkCredential (username, password) 'login. KeepAlive = মিথ্যা 'সমাপ্ত ftp. UseBinary = সত্য' বাইনারি মোড ftp. Timeout = 9000 'সময়সীমা 9 সেকেন্ড পরে ftp। System. Net. FtpWebResponse = CType (ftp. GetResponse, System. Net. FtpWebResponse) প্রতিক্রিয়া ব্যবহার করে ফাইলটি কতটা বড় তা জানি না IO. Stream = response. GetResponseStream হিসাবে FS ব্যবহার করে নতুন IO. FileStream (স্থানীয়, IO. FileMode. Create) ডিম বাফার (2047) বাইট ডিম যেমন Integer = 0 পড়ুন = responseStream পড়ুন। পড়ুন (বাফার, 0, বাফার। দৈর্ঘ্য) 'ftp fs থেকে টুকরা লিখুন (বাফার, 0, পড়ুন)' এবং ফাইল লুপে লিখুন যতক্ষণ না পড়া = 0 'আর কোন টুকরো প্রতিক্রিয়া না আসে স্ট্রিম। ক্লোজ ()' বন্ধ করুন ftp ফাইল fs। e file End using responseStream. Close () 'এটি বন্ধ করুন এমনকি যদি কিছু না থাকে তবে প্রতিক্রিয়া ব্যবহার করে শেষ করুন। কাজ শেষ করে 'ক্যাচ ব্যবহার করে এখানে ত্রুটি কোড লাগান। System. Object হিসাবে, ByVal e As System. EventArgs) টাইমার হ্যান্ডেল করে 1. টিক করুন যদি ModifyFlag = False তারপর 'যদি ব্যবহারকারী একটি বাইট পরিবর্তন করে তাহলে Label3. Text = "ডাউনলোড" System. Windows. Forms. Application. DoEvents () 'তাই নতুন লেবেল টেক্সট কল কল FTPDownload (TextBox3. Text)' রিমোট ফাইল ডাউনলোড করুন Label3. Text = "ডাউনলোড" System. Windows. Forms. Application. DoEvents () Call ReadRemoteFileToRegisters () 'কল করুন রেজিস্টার অ্যারে Label3. Text = "পিক্যাক্সের সাথে কথা বলা" সিস্টেম। শেষ হলে কল করুন SerialTxRx () 'পিক্যাক্সে পাঠান এবং এটি লেবেল 3 তে পাঠ করুন। টেক্সট = "পাঠানো এবং পিক্যাক্স থেকে প্রাপ্ত" সিস্টেম। উইন্ডোজ। Label3. Text = "Uploading" System. Windows. Forms. Application. DoEvents () কল FTPUpload (TextBox3. Text) 'আমার নাম Label3 নামে এফটিপি সাইটে ফেরত পাঠান। পুনরায় আরম্ভ করার সময় শেষ সাব সাব ডিসপ্লে PicaxeRegisters () Dim i as Integer Dim registernumber as String RichTextBox1. Multiline = True 'তাই টেক্সট বক্সে একাধিক লাইন প্রদর্শন করতে পারে RichTextBox1. Clear ()' i = 0 to 13 এর জন্য টেক্সট বক্স সাফ করুন registernumber = Trim (Str (i)) 'শীর্ষস্থান বন্ধ করুন)) + Chr (13)) পরবর্তী 'chr (13) হল ক্যারেজ রিটার্ন তাই নতুন লাইন শেষ সাব প্রাইভেট সাব বাটন সিস্টেম হিসাবে। i = Val (TextBox2. Text) যদি i <0 অথবা i> 255 তাহলে TextBox2. Text = 0 শেষ হয় যদি PicaxeRegisters (Val (TextBox1. Text)) = Val (TextBox2. Text) 'মান পরিবর্তন কল DisplayPicaxeRegisters ()' এবং ডিসপ্লে রিফ্রেশ করুন ModifyFlag = True 'এবং পরবর্তী এফটিপি লিংক ডাউনলোড এন্ড সাব সাব SaveRegistersToLocalFile ()' স্থানীয় টেক্সট ফাইলে রেজিস্টার অ্যারে সংরক্ষণ করুন Dim i As Integer FileOpen (1, TextBox3. Text, OpenMode. Output) 'নামের টেক্সট ফাইলটি খুলুন টেক্সট বক্সে i = 0 থেকে 13 PrintLine (1, Str (PicaxeRegisters (i))) '14 টি মান সংরক্ষণ করুন পরবর্তী ফাইল ক্লোজ (1)' ফাইল বন্ধ করুন সাব সাব ReadRemoteFileToRegisters () 'রেজিস্টার অ্যারেতে স্থানীয় টেক্সট ফাইল পড়ুন Dim i পূর্ণসংখ্যা হিসাবে Dim LineOfText As String FileOpen (1, TextBox3. Text, OpenMode. Input) 'রিমোট ফাইলের নাম পড়ুন i = 0 থেকে 13 LineOfText = LineInput (1)' 14 লাইনে পড়ুন es PicaxeRegisters (i) = Val (LineOfText) 'টেক্সটকে মানগুলিতে রূপান্তর করুন পরবর্তী ফাইল ক্লোজ (1) Ex Exception FileClose (1)' ফাইলটি বিদ্যমান নেই তাই কিছুই শেষ করবেন না। রিমোট এফটিপি ফাইল একই রকম হয় যখন এই প্রোগ্রামটি ডিম লাইনঅফটেক্সট স্ট্রিং হিসাবে চালানো হয় FileOpen (1, "FTPFilename.txt", OpenMode. Input) 'ফাইলটি খুলুন LineOfText = LineInput (1) TextBox3. Text = LineOfText' পড়ুন নাম FileClose (1) Ex Exception FileClose (1) End Try Sub Sub SaveFTPFilename () FileOpen (1, "FTPFilename.txt", OpenMode. Output) 'দূরবর্তী ftp ফাইলের নাম সংরক্ষণ করুন PrintLine (1, TextBox3. Text) FileClose (1) শেষ সাবএন্ড ক্লাস
ধাপ 9: উভয় পিসিতে প্রোগ্রাম চালান
পর্দার উপরের মাঝখানে সবুজ ত্রিভুজটি ক্লিক করে প্রোগ্রামটি চালানো শুরু করুন - 'ডিবাগিং শুরু করুন' বোতাম। 20 সেকেন্ডের জন্য কিছুই হবে না এবং তারপর প্রোগ্রামটি ftp সার্ভারের সাথে সংযোগ স্থাপনের চেষ্টা করবে এবং পিক্যাক্সে সংযোগ করার চেষ্টা করবে। পিকচারবক্সগুলো লাল বা সবুজ হয়ে যাবে। এফটিপি লোকেশন একটি ফ্রি ওয়েবসাইট এবং যে কেউ এটি ব্যবহার করতে পারে কিন্তু আপনাকে একটি ভিন্ন এফটিপি ওয়ার্কিং ফাইলের নাম ব্যবহার করতে হবে (আমার নাম DoctorAcula1) অন্যথায় আমরা একই ফাইলের নাম ব্যবহার করলে আমরা সবাই একে অপরের ডেটা শেষ করতে পারি! যদি আপনি চান তবে আপনি শেষ পর্যন্ত আপনার নিজস্ব এফটিপি সাইট পেতে পারেন - আমার 0Catch ওয়েবসাইট থেকে কোডে দুটি স্থানে কেবল এফটিপি অবস্থান, ব্যবহারকারীর নাম এবং পাসওয়ার্ড পরিবর্তন করুন। বেশিরভাগ ওয়েবসাইট এফটিপি অনুমোদন করে। একাধিক কম্পিউটার একই এফটিপি ফাইল অ্যাক্সেস করতে পারে - এফটিপি ফাইল সার্ভার এগুলি কোন ক্রমে ঘটে তা সাজায়। মাঝে মাঝে ডেটা সংঘর্ষ বা হ্যাং হয় এবং মনে হয় প্রতি 20 টি ফাইল পড়ে।কোডে একটি সময়সীমা আছে যদি এটি ঘটে তবে এটি দূষিত ডেটার পরিবর্তে কোন ডেটা ফেরত দেয় না। 128kbs আপলোড গতির সাথে একটি ব্রডব্যান্ড সংযোগ ব্যবহার করার অর্থ একটি ফাইল আপলোড প্রায় 3 সেকেন্ড সময় নেয় কিন্তু কখনও কখনও 8 সেকেন্ড পর্যন্ত, যার মধ্যে বেশিরভাগ সময় নেওয়া হয় ডাটা ট্রান্সফারের বদলে হ্যান্ডশেকিংয়ে। এটি পিকাক্সের সাথে ডাউনলোড, আপলোড এবং চ্যাট একাউন্টে নিয়ে কমপক্ষে 20 সেকেন্ডের টাইমার 1 টাইম সেট করে। খুব দ্রুত ব্রডব্যান্ডের সাহায্যে আপনি চক্রের সময়কে সংক্ষিপ্ত করতে সক্ষম হতে পারেন। যদি আপনি করেন, পরবর্তী টাইমার চক্রটি এফটিপি সাইট থেকে ডাউনলোড করা এড়িয়ে যায় এবং নতুন তথ্য পিক্যাক্সে পাঠায় এবং তারপর এটি আবার পড়ে এবং আপলোড করে। নতুন তথ্য এইভাবে এই গোষ্ঠীর সাথে যুক্ত সমস্ত পিক্যাক্সের পথ খুঁজে পায়। এটি ডিবাগিং এবং/অথবা পিসি সফটওয়্যারটিকে মাইক্রোকন্ট্রোলার হার্ডওয়্যার লুপের সাথে সংযুক্ত করার জন্য সহায়ক। ওয়েবসাইটগুলি PERL স্ক্রিপ্ট ব্যবহার করে হার্ডওয়্যার লুপ অ্যাক্সেস করতে পারে অথবা FTP সাইটে একটি নতুন ফাইল লিখতে পারে। এই স্ক্রিনশটটি Tx চিপ চালানোর সময় নেওয়া হয়েছিল, সুইচ চালু ছিল এবং রেজিস্টার b0 = to 1 Rx চিপে পাঠানো হয়েছিল তারপর রেজিস্টার বি 1 কেও 1 তে পরিবর্তন করেছিলেন। এইভাবে নেতৃত্ব উভয় বোর্ডে জ্বালানো হয়েছিল। এটি একটি তুচ্ছ অ্যাপ্লিকেশন কিন্তু একটি নেতৃত্বের পরিবর্তে 3.6Kw পাম্প চালু করা সহজ। আরো কিছু ধারণা https://drvernacula.topcities.com/ এ আছে, যার মধ্যে রয়েছে সৌরশক্তি চালিত রেডিও লিঙ্কের মাধ্যমে পিক্যাক্স লিঙ্ক করা। রেডিও লিঙ্ক এবং ইন্টারনেটের মাধ্যমে 'দ্য মেশিনস' এর জন্য পৃথিবীর অনেক কোণে পৌঁছানো সম্ভব। এই ধারণাটিকে আরও এগিয়ে নিয়ে যাওয়া এবং পিসি এবং এফটিপি সাইটকে ডেডিকেটেড ওয়েব সার্ভার চিপ দিয়ে প্রতিস্থাপন করার বিষয়ে পিক্যাক্স ফোরামে কিছু ধারণা রয়েছে যা সরাসরি রাউটারে প্লাগ করে। স্পষ্টতই এটি একটি লিঙ্কের বিদ্যুৎ খরচ হ্রাস করবে। আপনি যদি আরও আলোচনায় আগ্রহী হন অনুগ্রহ করে ইন্সট্রাকটেবল মন্তব্য এবং/অথবা পিক্যাক্স ফোরামে পোস্ট করুন।
ধাপ 10: কোডের স্ক্রিনশট
অনুরোধ দ্বারা, এখানে vb.net কোডের স্ক্রিনশটগুলির একটি সিরিজ রয়েছে যেখানে সমস্ত ফর্ম্যাটিং রয়েছে। এই কোডটি আসলে এই নির্দেশের পিছনে অনুলিপি করা হয়েছিল এবং বিন্যাসটি স্বয়ংক্রিয়ভাবে পুনরায় উপস্থিত হয়েছিল। এই ছবিগুলি পড়ার চেষ্টা করার চেয়ে লেখাটি কপি এবং পেস্ট করা ভাল হবে কিন্তু আপনি যদি ইন্টারনেট ক্যাফেতে থাকেন এবং vb.net ইনস্টল করতে না পারেন তবে এগুলি কার্যকর হবে।
ধাপ 11: স্ক্রিনশট 2
স্ক্রিনশট 2
ধাপ 12: স্ক্রিনশট 3
স্ক্রিনশট 3
ধাপ 13: স্ক্রিনশট 4
স্ক্রিনশট 4
ধাপ 14: স্ক্রিনশট 5
স্ক্রিনশট 5
ধাপ 15: স্ক্রিনশট 6
স্ক্রিনশট 6
প্রস্তাবিত:
আপনার মাইক্রোকন্ট্রোলার প্রকল্পগুলির জন্য চলমান গড়: 6 টি ধাপ
আপনার মাইক্রোকন্ট্রোলার প্রজেক্টের জন্য রানিং এভারেজ: এই নির্দেশে আমি ব্যাখ্যা করবো যে রানিং এভারেজ কি এবং কেন আপনার এটির যত্ন নেওয়া উচিত, সেইসাথে আপনাকে দেখাবো কিভাবে এটি সর্বোচ্চ গণনীয় দক্ষতার জন্য প্রয়োগ করা উচিত (জটিলতা নিয়ে চিন্তা করবেন না, এটি বুঝতে খুব সহজ এবং
আরডুইনো জন্য তাপমাত্রা সেন্সর কোভিড 19: 12 ধাপের জন্য প্রয়োগ করা হয়েছে (ছবি সহ)
Arduino- এর তাপমাত্রা সেন্সর কোভিড -১ 19 এর জন্য প্রযোজ্য: যখন আমরা মানবদেহের একটি প্রসেসরের তাপমাত্রা পরিমাপ করতে চাই তখন Arduino- এর তাপমাত্রা সেন্সর একটি মৌলিক উপাদান। Arduino সহ তাপমাত্রা সেন্সর অবশ্যই তাপের মাত্রা গ্রহণ এবং পরিমাপের জন্য যোগাযোগে বা কাছাকাছি হতে হবে। এভাবেই টি
ডিজিটাল মোডের জন্য ইয়েসু এফটি -100 পিসি লিঙ্ক ইন্টারফেস: 3 ধাপ
ডিজিটাল মোডের জন্য ইয়েসু এফটি -100 পিসি লিঙ্ক ইন্টারফেস: এখানে আমি ইয়েসু এফটি -100 এর জন্য একটি পিসি লিঙ্ক ইন্টারফেস তৈরির নির্দেশিকা উপস্থাপন করেছি। এই ইন্টারফেস আপনাকে HAM ডিজিটাল মোড (FT8, PSK31 ইত্যাদি) পরিচালনার জন্য একটি সাউন্ড কার্ড থেকে অডিও সিগন্যাল প্রেরণ এবং গ্রহণ করতে সাহায্য করে। অতিরিক্ত তথ্য পাওয়া যায়
দূরবর্তী সেচ ব্যবস্থা পরিচালনা ও নিরীক্ষণের জন্য মাইক্রোকন্ট্রোলার ব্যবহার: 4 টি ধাপ
দূরবর্তী সেচ ব্যবস্থা পরিচালনা ও নিরীক্ষণের জন্য মাইক্রোকন্ট্রোলার ব্যবহার: কম খরচে স্বয়ংক্রিয় সেচ ব্যবস্থার জন্য কৃষক এবং গ্রিনহাউস অপারেটর। এই প্রকল্পে, আমরা একটি মাইক্রোকন্ট্রোলারের সাথে একটি ইলেকট্রনিক মাটির আর্দ্রতা সেন্সরকে সংহত করি যখন মানুষের হস্তক্ষেপ ছাড়াই মাটি খুব শুষ্ক হয়
AVR মাইক্রোকন্ট্রোলার প্রোগ্রামিং এর জন্য এক্সট্রিম বার্নার ব্যবহার করা: 8 টি ধাপ
AVR মাইক্রোকন্ট্রোলার প্রোগ্রামিংয়ের জন্য এক্সট্রিম বার্নার ব্যবহার করা: আপনারা সবাই সেখানে AVR ব্যবহারকারী ভ্রাতৃত্ব, এবং যারা কেবল স্ট্রীমে প্রবেশ করছেন, আপনারা কেউ PIC মাইক্রোকন্ট্রোলার দিয়ে শুরু করেছেন এবং কেউ ATMEL AVR দিয়ে শুরু করেছেন, এটি আপনার জন্য লেখা! সুতরাং আপনি একটি USBASP কিনেছেন কারণ এটি ফ্ল্যাশ করার জন্য সস্তা এবং কার্যকর