私はNodeMCU(ESP8266)を使用してロボットをコーディングしており、リモートコントロールしたいと考えています。私の現在の解決策は、近くのルータに接続し、インターネットに接続し、TCP HTTPサーバーを作成しています。データは、モバイルデバイス(リモート)からHTTPリクエストを介してNodeMCU(ロボット)にストリーミングされます。リモートは、HTML/CSS/JavaScriptのブラウザを介してモバイルデバイスにロードされます。 NodeMCUは独自のホットスポットを作成するためボードによって作成されたアクセスポイント経由でNodeMCUにHTTPサーバーを作成する
私が代わりにしたいがために、次のとおりです。ルータは
- 接続が
より直接的である私は、同じTCPをしたいですHTTPソリューションを使用してWebページを提供する方法はわかりません。
これは私のコードです:
-- Connect to router
wifi.sta.config("ssid","password")
wifi.sta.connect()
-- Code for waiting for connection
-- Create server
srv = net.createServer(net.TCP)
srv:listen(80,function(conn)
conn:on("receive",function(conn,payload)
for line in string.gmatch(payload,'[^\r\n]+') do
s = string.find(line, "GET /&")
-- If query is there, control robot
if s ~= nil then
-- Do stuff with query
break;
-- If no query, serve webpage
else
file.open("index.html", "r")
while true do
s = file.read(1460)
if s == nil then
break
end
conn:send(s)
end
file.close()
end
break
end
conn:on("sent", function(conn) conn:close() end)
end)
end)
は、カスタムホットスポットの作成:
wifi.setmode(wifi.STATIONAP)
cfg={}
cfg.ssid="custom_ssid"
cfg.pwd="custom_password"
wifi.ap.config(cfg)
をモバイルには、サーバーにアクセスできるように、どのように私はそれを作るのですか?サーバーのIPを取得/設定するにはどうすればよいですか?基本的に、私はそれが動作するために必要です。ありがとう!
あなたが何を意味するか分かりませんが、私はそれを動作させました。 upvoteを取る。 –