Black Shark Virtual Panel v.1.1 - Page 6 - ED Forums
 


Notices

Reply
 
Thread Tools Display Modes
Old 07-20-2016, 07:26 PM   #51
Uragx
Junior Member
 
Join Date: Feb 2016
Location: Minsk
Posts: 89
Reputation power: 2
Uragx is on a distinguished road
Default

ЙЕС. Заработало. Не сразу, с подвисанием, но заработало. Спасибо за помощь!
Uragx is offline   Reply With Quote
Old 02-13-2017, 10:18 AM   #52
Uragx
Junior Member
 
Join Date: Feb 2016
Location: Minsk
Posts: 89
Reputation power: 2
Uragx is on a distinguished road
Default

Ещё вопрос. Вообще-то к Создателю, но может быть кто и так подскажет. Возможно ли воткнуть экран шквала в BSVP? и если да, то каким образом? Или, допустим, "своровать" скины приборов и воткнуть их в Гадрок Хелиос?

Подчёркиваю - я ни разу не программер, посему разговаривайте как с очень тупым.
Uragx is offline   Reply With Quote
Old 02-20-2017, 11:19 PM   #53
jazzymanserg
Member
 
jazzymanserg's Avatar
 
Join Date: Oct 2016
Location: Odessa
Posts: 140
Reputation power: 4
jazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the rough
Default

Кто то разбирался с принимающим сокетом ? А то во всех примерах только передающий. Ну то есть чтоб передать данные в локон через сокет ?
пишу
host = host or "localhost"
port = port or 10604
socket = require("socket")
local sck = socket.try(socket.bind(host, port))

и молчёк локон всё отработал но при попытке подкючиться по порту на это адрес соообщение 10061 сокет не существует

Last edited by jazzymanserg; 02-20-2017 at 11:27 PM.
jazzymanserg is offline   Reply With Quote
Old 02-21-2017, 12:07 PM   #54
BR=55=Sevas
Senior Member
 
BR=55=Sevas's Avatar
 
Join Date: Apr 2008
Location: Севастополь
Posts: 1,553
Reputation power: 131
BR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud of
Default

Настройки на приём и на передачу одинаковы.

Настройка
Code:
function LuaExportStart()
	package.path  = package.path..";.\\LuaSocket\\?.lua"
	package.cpath = package.cpath..";.\\LuaSocket\\?.dll"
	socket = require("socket")
	host = host or "localhost"
	port = port or 8080
	Buran = socket.try(socket.connect(host,port))
	Buran:setoption("tcp-nodelay",true)
end
прием DCSом комманд
Code:
function LuaExportBeforeNextFrame()
--получении управляющих комманд
	rs, err = Buran:receive('*l')
	if (rs ~= nil) then
		_, _, pitch, bank = string.find(rs, "(.+) (.+)")
		LoSetCommand(2001, pitch)
        	LoSetCommand(2002, bank)
        end

end
BR=55=Sevas is offline   Reply With Quote
Old 02-23-2017, 10:43 PM   #55
jazzymanserg
Member
 
jazzymanserg's Avatar
 
Join Date: Oct 2016
Location: Odessa
Posts: 140
Reputation power: 4
jazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the rough
Default

Дружище - лажу по всем тема - пока результата 0


function LuaExportStart()
package.path = package.path..";.\\LuaSocket\\?.lua"
package.cpath = package.cpath..";.\\LuaSocket\\?.dll"
socket = require("socket")
host = host or "localhost"
port = port or 8080
c = socket.try(socket.connect(host, port))
c:setoption("tcp-nodelay",true)
end


function LuaExportBeforeNextFrame()
rs, err = с:receive('*l')
if (rs ~= nil) then
_, _, pitch, bank = string.find(rs, "(.+) (.+)")
LoSetCommand(2001, pitch)
LoSetCommand(2002, bank)
end

end

У меня крафт Су-25А.

при попытке соединения со скриптом в питоне

import socket,select
host = "localhost"
port = 8080
ne = socket.socket()
ne.connect((host, port))
ne.send(<комманда>)
ne.close()

получаю ответ что сокета не существует

При этом когда запускаю сиок, то коннект с сиок проходит нормально. соеднение проходит

Мне кажется что причина банальная

Да , кстати, фаервол отключил

Last edited by jazzymanserg; 02-23-2017 at 11:16 PM.
jazzymanserg is offline   Reply With Quote
Old 02-24-2017, 11:04 AM   #56
BR=55=Sevas
Senior Member
 
BR=55=Sevas's Avatar
 
Join Date: Apr 2008
Location: Севастополь
Posts: 1,553
Reputation power: 131
BR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud of
Default

Проверь каким-нибудь tcp терминалом, что связь с дкс точно есть.
Я с питоном не знаком, но судя по всему проблема в нем на твоей стороне, т.к. экспорт этот работает 100%.
Дкс является клиентом, чтобы с ним работать через экспорт твой софт должен быть сервером.
Убедись, что твой питоновский скрипт создает tcp сервер.

ps погуглил, судя из твоего кода local sck = socket.try(socket.bind(host, port))
ты как раз таки создаешь клиента, а надо сервер

Это если я правильно понял тут
Calling listen() puts the socket into server mode, and accept() waits for an incoming connection.
https://pymotw.com/2/socket/tcp.html

Last edited by BR=55=Sevas; 02-24-2017 at 11:09 AM.
BR=55=Sevas is offline   Reply With Quote
Old 02-24-2017, 03:09 PM   #57
jazzymanserg
Member
 
jazzymanserg's Avatar
 
Join Date: Oct 2016
Location: Odessa
Posts: 140
Reputation power: 4
jazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the rough
Default

Quote:
Originally Posted by BR=55=Sevas View Post
ps погуглил, судя из твоего кода local sck = socket.try(socket.bind(host, port))
ты как раз таки создаешь клиента, а надо сервер
огромное спасибо за направление мысли

При оправки питоном строки "431=1", в СИОК переменная 431 выставляется в 1. Это я проверил. А дальше ЛУА должна прочитать данные методом receive(*l). Но ГС должен сначал в сиок послать запрос на нужныіе переменные. а потом обработать методом receive. И зачем тогда нужен СИОК ? если можнонапрямую в ГС
jazzymanserg is offline   Reply With Quote
Old 02-24-2017, 04:03 PM   #58
BR=55=Sevas
Senior Member
 
BR=55=Sevas's Avatar
 
Join Date: Apr 2008
Location: Севастополь
Posts: 1,553
Reputation power: 131
BR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud of
Default

Не знаю что есть сиок.
Чтобы программно убрать шассии я делаю так

Code:
function LuaExportBeforeNextFrame()
--получении управл¤ющих комманд
	rs, err = Buran:receive('*l')
	if (rs ~= nil) then
			_, _, pitch, bank, dCom = string.find(rs, "(.+) (.+) (.+)")
			pitch = tonumber(pitch)
			LoSetCommand(2001, pitch)
        	LoSetCommand(2002, bank)
			dCom = tonumber(dCom)
			if dCom ~= -1		then LoSetCommand(dCom)  end
			
        end
Из моего сервера я шлю 3м параметром -1 когда ничего не надо делать, если же надо убрать шасси я однократно отправляю 68.
список других комманд есть в exporte

Last edited by BR=55=Sevas; 02-24-2017 at 05:14 PM.
BR=55=Sevas is offline   Reply With Quote
Old 02-24-2017, 08:44 PM   #59
jazzymanserg
Member
 
jazzymanserg's Avatar
 
Join Date: Oct 2016
Location: Odessa
Posts: 140
Reputation power: 4
jazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the roughjazzymanserg is a jewel in the rough
Default

А что за крафт у тебя ?
И как полностью строк аекспорта выглядит - ну та \n \s \d ?
В су 25 не кликабельнм Losetcommand содержит один параметр LoSetCommand(<command>) убрать шасси 431

Блииин - Севас - реальный чувак ! Таки да - дело было в серваке. его надо было поставить сначала на прослушку, а после коннекта слать
И за сайт спасибо !https://pymotw.com

Last edited by jazzymanserg; 02-25-2017 at 12:32 AM.
jazzymanserg is offline   Reply With Quote
Old 02-25-2017, 10:47 AM   #60
BR=55=Sevas
Senior Member
 
BR=55=Sevas's Avatar
 
Join Date: Apr 2008
Location: Севастополь
Posts: 1,553
Reputation power: 131
BR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud ofBR=55=Sevas has much to be proud of
Default

Крафт - су-27.
Строка обычная, через пробел символы-параметры и конец
типа такого "1 1 1 1\n"
BR=55=Sevas is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Virtual Panel v.1.2.1 Mnemonic Общее Обсуждение 150 09-24-2017 05:09 AM
Release of new Virtual Panel v.1.2.1! Mnemonic Lock On: Flaming Cliffs 1 & 2 244 10-06-2014 05:20 PM
Black Shark Virtual Squadrons V1Rotate Multiplayer 11 09-20-2009 12:31 PM
Virtual Panel for Black Shark? Allo PC Hardware and Related Software 0 12-14-2008 10:58 AM
Virtual Panel! Mnemonic Lock On: Flaming Cliffs 1 & 2 30 01-18-2007 09:52 AM

All times are GMT. The time now is 09:56 PM. vBulletin Skin by ForumMonkeys. Powered by vBulletin®.
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.