roboforum.ru

Технический форум по робототехнике.

Авто-определение COM порта на котором висит Ардуина

Re: Авто-определение COM порта на котором висит Ардуина

dccharacter » 26 мар 2012, 22:03

угу, теперь точно так же надо поставить pyserial. он тоже писал что не может найти питон :-)

Re: Авто-определение COM порта на котором висит Ардуина

Dmitri Vladimirovich » 26 мар 2012, 22:07

все. до меня дошло. сначала надо написать

python.exe setup.py build

потом

python.exe setup.py install

Добавлено спустя 39 секунд:
C:\Program Files\Python32>python.exe ArduinoPortFinder.py
Traceback (most recent call last):
File "ArduinoPortFinder.py", line 13, in <module>
import serial
File "C:\Program Files\Python32\serial\__init__.py", line 19, in <module>
from serial.serialwin32 import *
File "C:\Program Files\Python32\serial\serialwin32.py", line 12, in <module>
from serial import win32
File "C:\Program Files\Python32\serial\win32.py", line 196
MAXDWORD = 4294967295L # Variable c_uint
^
SyntaxError: invalid syntax

C:\Program Files\Python32>

Добавлено спустя 1 минуту 11 секунд:
C:\Program Files\Python32>python.exe setup.py build
running build
running build_py
creating build
creating build\lib
creating build\lib\serial
copying serial\rfc2217.py -> build\lib\serial
copying serial\serialcli.py -> build\lib\serial
copying serial\serialjava.py -> build\lib\serial
copying serial\serialposix.py -> build\lib\serial
copying serial\serialutil.py -> build\lib\serial
copying serial\serialwin32.py -> build\lib\serial
copying serial\sermsdos.py -> build\lib\serial
copying serial\win32.py -> build\lib\serial
copying serial\__init__.py -> build\lib\serial
creating build\lib\serial\tools
copying serial\tools\list_ports.py -> build\lib\serial\tools
copying serial\tools\list_ports_posix.py -> build\lib\serial\tools
copying serial\tools\list_ports_windows.py -> build\lib\serial\tools
copying serial\tools\miniterm.py -> build\lib\serial\tools
copying serial\tools\__init__.py -> build\lib\serial\tools
creating build\lib\serial\urlhandler
copying serial\urlhandler\protocol_hwgrep.py -> build\lib\serial\urlhandler
copying serial\urlhandler\protocol_loop.py -> build\lib\serial\urlhandler
copying serial\urlhandler\protocol_rfc2217.py -> build\lib\serial\urlhandler
copying serial\urlhandler\protocol_socket.py -> build\lib\serial\urlhandler
copying serial\urlhandler\__init__.py -> build\lib\serial\urlhandler
Skipping implicit fixer: buffer
Skipping implicit fixer: idioms
Skipping implicit fixer: set_literal
Skipping implicit fixer: ws_comma
running build_scripts
creating build\scripts-3.2
copying and adjusting serial\tools\miniterm.py -> build\scripts-3.2
Skipping implicit fixer: buffer
Skipping implicit fixer: idioms
Skipping implicit fixer: set_literal
Skipping implicit fixer: ws_comma

C:\Program Files\Python32>python.exe setup.py install
running install
running build
running build_py
running build_scripts
running install_lib
creating C:\Program Files\Python32\Lib\site-packages\serial
copying build\lib\serial\rfc2217.py -> C:\Program Files\Python32\Lib\site-packag
es\serial
copying build\lib\serial\serialcli.py -> C:\Program Files\Python32\Lib\site-pack
ages\serial
copying build\lib\serial\serialjava.py -> C:\Program Files\Python32\Lib\site-pac
kages\serial
copying build\lib\serial\serialposix.py -> C:\Program Files\Python32\Lib\site-pa
ckages\serial
copying build\lib\serial\serialutil.py -> C:\Program Files\Python32\Lib\site-pac
kages\serial
copying build\lib\serial\serialwin32.py -> C:\Program Files\Python32\Lib\site-pa
ckages\serial
copying build\lib\serial\sermsdos.py -> C:\Program Files\Python32\Lib\site-packa
ges\serial
creating C:\Program Files\Python32\Lib\site-packages\serial\tools
copying build\lib\serial\tools\list_ports.py -> C:\Program Files\Python32\Lib\si
te-packages\serial\tools
copying build\lib\serial\tools\list_ports_posix.py -> C:\Program Files\Python32\
Lib\site-packages\serial\tools
copying build\lib\serial\tools\list_ports_windows.py -> C:\Program Files\Python3
2\Lib\site-packages\serial\tools
copying build\lib\serial\tools\miniterm.py -> C:\Program Files\Python32\Lib\site
-packages\serial\tools
copying build\lib\serial\tools\__init__.py -> C:\Program Files\Python32\Lib\site
-packages\serial\tools
creating C:\Program Files\Python32\Lib\site-packages\serial\urlhandler
copying build\lib\serial\urlhandler\protocol_hwgrep.py -> C:\Program Files\Pytho
n32\Lib\site-packages\serial\urlhandler
copying build\lib\serial\urlhandler\protocol_loop.py -> C:\Program Files\Python3
2\Lib\site-packages\serial\urlhandler
copying build\lib\serial\urlhandler\protocol_rfc2217.py -> C:\Program Files\Pyth
on32\Lib\site-packages\serial\urlhandler
copying build\lib\serial\urlhandler\protocol_socket.py -> C:\Program Files\Pytho
n32\Lib\site-packages\serial\urlhandler
copying build\lib\serial\urlhandler\__init__.py -> C:\Program Files\Python32\Lib
\site-packages\serial\urlhandler
copying build\lib\serial\win32.py -> C:\Program Files\Python32\Lib\site-packages
\serial
copying build\lib\serial\__init__.py -> C:\Program Files\Python32\Lib\site-packa
ges\serial
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\rfc2217.py to
rfc2217.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\serialcli.py t
o serialcli.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\serialjava.py
to serialjava.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\serialposix.py
to serialposix.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\serialutil.py
to serialutil.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\serialwin32.py
to serialwin32.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\sermsdos.py to
sermsdos.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\tools\list_por
ts.py to list_ports.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\tools\list_por
ts_posix.py to list_ports_posix.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\tools\list_por
ts_windows.py to list_ports_windows.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\tools\miniterm
.py to miniterm.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\tools\__init__
.py to __init__.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\urlhandler\pro
tocol_hwgrep.py to protocol_hwgrep.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\urlhandler\pro
tocol_loop.py to protocol_loop.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\urlhandler\pro
tocol_rfc2217.py to protocol_rfc2217.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\urlhandler\pro
tocol_socket.py to protocol_socket.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\urlhandler\__i
nit__.py to __init__.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\win32.py to wi
n32.pyc
byte-compiling C:\Program Files\Python32\Lib\site-packages\serial\__init__.py to
__init__.pyc
running install_scripts
creating C:\Program Files\Python32\Scripts
copying build\scripts-3.2\miniterm.py -> C:\Program Files\Python32\Scripts
running install_egg_info
Writing C:\Program Files\Python32\Lib\site-packages\pyserial_py3k-2.6-py3.2.egg-
info


Писериал вроде поставился

Re: Авто-определение COM порта на котором висит Ардуина

dccharacter » 26 мар 2012, 22:10

таааааааааак?

Re: Авто-определение COM порта на котором висит Ардуина

Dmitri Vladimirovich » 26 мар 2012, 22:17

запускаю код - выдается ошибка

C:\Program Files\Python32>python.exe ArduinoPortFinder.py
Traceback (most recent call last):
File "ArduinoPortFinder.py", line 13, in <module>
import serial
File "C:\Program Files\Python32\serial\__init__.py", line 19, in <module>
from serial.serialwin32 import *
File "C:\Program Files\Python32\serial\serialwin32.py", line 12, in <module>
from serial import win32
File "C:\Program Files\Python32\serial\win32.py", line 196
MAXDWORD = 4294967295L # Variable c_uint
^
SyntaxError: invalid syntax

C:\Program Files\Python32>

Re: Авто-определение COM порта на котором висит Ардуина

dccharacter » 26 мар 2012, 22:21

# This will be suitable for python2.5
python setup.py install


# This is suitable for python3.1
python3 setup.py install

Попробуйте второй вариант для установки pySerial, т.е. python3

Добавлено спустя 27 секунд:
http://blenderartists.org/forum/showthr ... ort-serial

Re: Авто-определение COM порта на котором висит Ардуина

Dmitri Vladimirovich » 26 мар 2012, 22:29

Я уже наткнулся на этот форум
но там же про линух. под виндой нету python3

Добавлено спустя 51 секунду:
а, там дальше есть про винду

Добавлено спустя 2 минуты 50 секунд:
проблему это не решило - нету такой папки 2.58 как у него - у меня третья версия питона..
А если под линухом попробовать - Ваш код должен работать?

Re: Авто-определение COM порта на котором висит Ардуина

dccharacter » 26 мар 2012, 22:31

Dmitri Vladimirovich писал(а):Я уже наткнулся на этот форум
но там же про линух. под виндой нету python3

Добавлено спустя 51 секунду:
а, там дальше есть про винду

Добавлено спустя 2 минуты 50 секунд:
проблему это не решило - нету такой папки 2.58 как у него - у меня третья версия питона..
А если под линухом попробовать - Ваш код должен работать?

по-идее должен

Re: Авто-определение COM порта на котором висит Ардуина

Dmitri Vladimirovich » 26 мар 2012, 22:33

ок, попробую.
кстати какая у Вас версия питона?

Re: Авто-определение COM порта на котором висит Ардуина

dccharacter » 26 мар 2012, 22:35

Dmitri Vladimirovich писал(а):ок, попробую.
кстати какая у Вас версия питона?

3 с копейками. Тоже как-то непросто ставил pySe
о
а если скопировать папку pySerila в python/Libs и еще раз попробоать запустить установку?

Re: Авто-определение COM порта на котором висит Ардуина

Dmitri Vladimirovich » 26 мар 2012, 22:45

А зпаустить в какой директории? В главной питона? Или в либс? если в главной, и прописать путь к сетапу, он не видит сам сетап

C:\Program Files\Python32>python.exe C:\Program Files\Python32\Lib\pyserial-2.6
setup.py install
python.exe: can't open file 'C:\Program': [Errno 2] No such file or directory

Re: Авто-определение COM порта на котором висит Ардуина

dccharacter » 26 мар 2012, 22:51

запускать из питон/либс/писериал

Re: Авто-определение COM порта на котором висит Ардуина

Dmitri Vladimirovich » 26 мар 2012, 22:56

C:\Program Files\Python32\Lib\pyserial-2.6>C:\Program Files\Python32\python.exe
setup.py install
"C:\Program" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

C:\Program Files\Python32\Lib\pyserial-2.6>

Давайте завтра, точнее уже сегодня, с кем-нибудь из наших попробую поставить писериал, м тогда продожим, ок?

Re: Авто-определение COM порта на котором висит Ардуина

dccharacter » 26 мар 2012, 23:09

ок. чтобы в виндовой комстроке работали пути с пробелами, надо в кавычки все взять, т.е. C:\Program Files\Python32\Lib\pyserial-2.6>"C:\Program Files\Python32\python.exe"

Re: Авто-определение COM порта на котором висит Ардуина

dccharacter » 27 мар 2012, 23:02

Это на роутере:

[xxx@router root]$ python3
Python 3.2.2 (default, Feb 18 2012, 11:50:59)
[GCC 4.1.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import serial
>>> from serial.tools.list_ports import comports
>>> comports()
[('/dev/ttyS0', 'ttyS0', 'n/a'), ('/dev/ttyS1', 'ttyS1', 'n/a'), ('/dev/ttyUSB0', '1-1', 'USB VID:PID=0924:4265 SNR=BMA383220903....')]
>>>

Добавлено спустя 17 минут 27 секунд:
Код: Выделить всёРазвернуть
#-------------------------------------------------------------------------------
# Name:        ArduComports
# Purpose:
#
# Author:      dccharacter
#
# Created:     27.03.2012
# Copyright:   (c) dccharacter 2012
# Licence:     <your licence>
#-------------------------------------------------------------------------------
#!/usr/bin/env python

import serial
from serial.tools.list_ports import comports
import re

def main():
    coms = comports()
    print('Looking for Arduinos...')
    index = 0
    for com, desc, hwid in coms:
        if re.search("Arduino", desc):
            print("An Arduino is connected to", com, "(", desc, ")")
        index = index+1
    print('Done searching (', str(index), 'ports checked)')


if __name__ == '__main__':
    main()

Re: Авто-определение COM порта на котором висит Ардуина

Angel71 » 28 мар 2012, 00:10

:) что-то мне подсказывает, что под винду давно есть версия 3.2.2 http://www.python.org/getit/releases/3.2.2/


Rambler\'s Top100 Mail.ru counter