فهرست مطالب:
- مرحله 1: دکمه فشاری به آردوینو
- مرحله 2: آردوینو به تمشک
- مرحله 3: کد سمت سرور
- مرحله 4: پیکربندی وب سایت
تصویری: زنگ زدن به وب!: 4 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:56
Ring the Web برای تأثیرگذاری بر وب سایت های محلی/محلی واقعی است.
اطلاعات بیشتر در مورد آن:
makker.hu/RingTheWeb/
شما نیاز دارید:
- 1 دکمه فشاری
- مقاومت 10k
- آردوینو (هر نوع)
- کابل ها
- کامپیوتر کوچک و کم مصرف - در این مورد یک RPi
- دسترسی به سرور یا رایانه با IP عمومی با node.js
- سایت اینترنتی
مراحل:
- دکمه فشاری به آردوینو
- آردوینو به تمشک
- تمشک به سرور
- وب سایت به سرور
مرحله 1: دکمه فشاری به آردوینو
ابتدا به یک آردوینو و یک دکمه فشاری نیاز دارید!
هر نوع آنها امکان پذیر است ، انتخاب با شماست.
برای اتصال آنها ، لطفاً آموزش دکمه رسمی Arduino را دنبال کنید.
در اینجا کد آردوینو آمده است:
// کد آردوینو برای خواندن پین دیجیتال و ارسال مقدار به پورت سریال
// Balázs Kovács، 2018. void setup () {Serial.begin (9600)؛ // باز کردن پورت سریال pinMode (8 ، INPUT) ؛ // اتصال دکمه به پین 8} int counter = 0؛ // چیزی که بعداً از حلقه void استفاده شد () {if (digitalRead (8) == 1) {// وضعیت پین 8 را بررسی کنید Serial.write ("8") ؛ } تأخیر (100) ؛ شمارنده ++؛ if (counter = 20) {// هر 20x100 = 2000ms -> counter = 0؛ Serial.write ("0")؛ // پیام "من موجود هستم" را به سرور ارسال می کند}} // این همه!
مرحله 2: آردوینو به تمشک
اکنون می توانیم آردوینو را به رایانه متصل کنیم. در این مورد ما از تمشک استفاده می کنیم ، زیرا مصرف برق کمی دارد.
آن را از طریق USB یا مستقیماً با پین های RX-TX ، که در اینجا توضیح داده شده است ، وصل کنید.
سپس node.js و npm را همانطور که در اینجا توضیح داده شده نصب کنید. کلمات کلیدی عبارتند از:
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
و سپس
sudo apt -get install -y nodejs
Npm (مدیر بسته Node.js) به ماژول های socket.io-client و serialport نیاز دارد ، بنابراین آنها را نصب کنید:
npm socket.io-client را نصب کنید
npm port serial را نصب کنید
یک فایل something.js را با کد زیر باز و ذخیره کنید:
// مقداردهی اولیه اتصال socket.io:
سوکت var؛ var io = require ('socket.io-client')؛ socket = io ("https://yourserver.com:port")؛ // اگر اتصال به سرور موفقیت آمیز باشد: socket.on ('connect'، function () {socket.send ("من اینجا هستم!")؛ console.log ("متصل به سرور")؛}) ؛ // راه اندازی ارتباط پورت سریال ، NB /dev = ttyACM0 را می توان تغییر داد: var SerialPort = require ('serialport')؛ var serialPort = جدید SerialPort ('/dev/ttyACM0'، {baudRate: 9600})؛ // اگر چیزی از آردوینو می آید ، پیامهای متفاوتی // به سرور ارسال می کند با توجه به آن serialPort.on ('data'، function (data) {console.log ('Data:'، data.toString ('ascii'))؛ if (data.indexOf ('8')! ==-1) {socket.send ('/RingTheBell 1')؛} if (data.indexOf ('0')! ==-1) {سوکت send ('/client1 1')؛}})؛ // خواندن داده های موجود - من فکر می کنم لازم نیست serialPort.on ('readable'، function () {console.log ('Data:'، port.read ())؛})؛
اکنون باید کد سمت سرور node.js را نیز تنظیم کنید ، تا آن زمان می توانید اسکریپت را شروع و آزمایش کنید
گره./something.js
اگر چیزی اشتباه است ، لطفاً به من اطلاع دهید!
مرحله 3: کد سمت سرور
در سمت سرور ، ما نیاز به node.js با سرور socket.io داریم.
بنابراین آن را با موارد زیر اضافه کنید:
npm socket-io را نصب کنید
سپس در مرحله دوم به یک اسکریپت مشابه کد نیاز خواهید داشت ، با این تفاوت که منتظر ارتباطات است و در صورت وجود ، هر پیامی که از سرویس گیرنده ارسال می شود را برای همه کلاینت ها پخش می کند. مورد ، برای کاربران وب سایت…
بنابراین ، یک serverscript.js را با موارد زیر باز کنید:
var http = require ('http') ،
io = require ('socket.io')؛ // حداقل سرور http را باز کنید. socket.io به آن نیاز دارد var server = http.createServer (تابع (req، res) {res.writeHead (200، {'Content-Type': 'text/html'})؛ res.end ('سلام')؛})؛ // سوکت tcp را روشن کنید - پورت خود را تنظیم کنید! server.listen (7004 ، function () {console.log ("سرور TCP در حال اجرا بر روی پورت 7004") ؛}) ؛ // تجزیه و تحلیل پیام های tcp var socket = io.listen (سرور) ؛ socket.on ('اتصال' ، عملکرد (مشتری ، rinfo) {client.broadcast.emit ('سیستم' ، 'کسی متصل است …') ؛ client.on ('پیام' ، عملکرد (رویداد) {console.log (رویداد) ؛ // هر پیامی را برای هر کاربر متصل پخش می کند! function () {socket.emit ('message'، 'somebody disconneted…')؛})؛})؛
سعی کنید با آن آزمایش کنید
گره./serverscript.js
اگر سرویس گیرنده نیز کار می کند ، باید ارتباط آنها را در هر دو کنسول مشاهده کنید. حداقل اینها:
داده ها: 0
-به صورت دوره ای به سیستم می گوید که ارتباط سرور Arduino-> Raspberry-> کار می کند.
و
داده ها: 8
- می گوید که دکمه روشن است.
مرحله 4: پیکربندی وب سایت
اکنون ما با 75 ready آماده ایم!
کار سخت را با افزودن کد وب سایت به پایان برسانید.
آسان است.
اول ، شامل مشتری socket.io:
سپس سیستم تجزیه و تحلیل پیام را ایجاد کنید:
سوکت var؛
سوکت = io ("yourserver.com:port")؛ socket.on ('connect'، function () {socket.send ('مشتری ناشناس - کاربر وب سایت - متصل است!')؛ socket.on ('message'، function (msg) {// اگر می خواهید هر پیامی ، فقط آن را کامنت نکنید: // console.log (msg) ؛ اگر (msg == "/RingTheBell 1") // در اینجا کد مورد استفاده برای بیان رویداد دکمه فشاری آمده است: {document.body.style.background = "#ccc"؛ setTimeout (function () {document.body.style.background = "#000"؛}، 1000)؛}؛ if (msg == "/client1 1") {// در اینجا می توانید چیزی را قرار دهید که به وضعیت مشتری متصل شده واکنش نشان می دهد}؛})؛
Voilá!
آماده.
توصیه شده:
پلک زدن Caos: Mapa Logístico برای چشمک زدن تصادفی: 5 مرحله
Blink Caos: Mapa Logístico به صورت تصادفی Blink: شما می توانید به طور کلی برای برنامه های کاربردی ، با استفاده از & amp ؛ ضبط نقشه ، به عنوان مثال توضیح دهید. Con el mapa log & iacute؛ stico، se enciende y apaga un led de forma aleatoria. Este puede servir simplemente de ejemplo de como a
ساعت زنگ دار هوشمند: یک ساعت زنگ دار هوشمند ساخته شده با تمشک پای: 10 مرحله (همراه با تصاویر)
ساعت زنگ دار هوشمند: ساعت زنگ دار هوشمند ساخته شده با تمشک پای: آیا تا به حال به دنبال ساعت هوشمند بوده اید؟ اگر چنین است ، این راه حل برای شما است! من ساعت زنگ دار هوشمند ساختم ، این یک ساعت است که می توانید زمان زنگ ساعت را با توجه به وب سایت تغییر دهید. هنگامی که زنگ هشدار به صدا در می آید ، یک صدا (زنگ) و 2 چراغ
ساعت زنگ دار: زنگ مخصوص ، بسیار م :ثر: 3 مرحله
ساعت زنگ دار: آهنگ زنگ ویژه ، بسیار م :ثر: سلام به همه! این اولین باری است که من یک دستورالعمل ارسال می کنم ، متاسفم برای سطح پایینی که در زبان انگلیسی دارم :) در اینجا بیداری برای کمک به کسانی است که صبح دوباره به خواب می روند. این اصل بسیار ساده است ، نه اینکه با زنگ بیدار شوید یا
با IFTTT: 8 مرحله ، زنگ دري سيمي خود را به زنگ در هوشمند تبديل كنيد
با IFTTT زنگ دري سيمي خود را به زنگ درب هوشمند تبديل كنيد: زنگ در واي فاي زنگ دري سيمي موجود شما را به زنگ هوشمند تبديل مي كند. https://www.fireflyelectronix.com/product/wifidoor
استفاده از Parallax Basic Stamp II برای زنگ زدن از راه دور: 4 مرحله (همراه با تصاویر)
استفاده از Parallax Basic Stamp II برای زنگ زدن از راه دور: مشکل دارید؟ سگی که وقتی زنگ در به صدا در می آید بسیار هیجان زده می شود. راه حل؟ در مواقع تصادفی زمانی که کسی آنجا نیست و هیچ کس به آن پاسخ نمی دهد ، زنگ بزنید تا بتواند سگ را مقابله کند - برای از بین بردن ارتباط زنگ در