build spec

This commit is contained in:
Kseninia Mikhaylova 2024-10-30 12:48:12 +03:00
parent 85aa58a12a
commit 12dc688dcd
21 changed files with 452 additions and 85 deletions

2
.gitignore vendored
View File

@ -2,6 +2,6 @@ __pycache__/
.venv/ .venv/
.vscode/ .vscode/
build/ build/
dist/ data/*
app.log app.log

165
app.log
View File

@ -62436,3 +62436,168 @@ Joint 5 - Position: 2.6324369751913186e-19, Velocity: -1.7044130180708233e-30 -
2024-10-29 16:42:45,968 - logger - INFO - convrt to joint (-0.955351537775095, 1.3850824462023585, 1.4937405684999912, -0.3423684728223803, -0.0110223880899111, 0.0010515865173754695) - client_socket.py - 208 2024-10-29 16:42:45,968 - logger - INFO - convrt to joint (-0.955351537775095, 1.3850824462023585, 1.4937405684999912, -0.3423684728223803, -0.0110223880899111, 0.0010515865173754695) - client_socket.py - 208
2024-10-29 16:42:45,970 - logger - INFO - set joints - client_socket.py - 216 2024-10-29 16:42:45,970 - logger - INFO - set joints - client_socket.py - 216
2024-10-29 16:42:46,703 - logger - INFO - Команд в очереди ['ok'] - client_socket.py - 213 2024-10-29 16:42:46,703 - logger - INFO - Команд в очереди ['ok'] - client_socket.py - 213
2024-10-30 09:10:25,833 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 09:10:25,834 - logger - INFO - None - robot.py - 52
2024-10-30 09:10:25,834 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 09:10:25,834 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 09:10:25,835 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 09:10:25,835 - logger - INFO - robot_app еще не инициализирован. Метод: get_world_coordinates - main.py - 100
2024-10-30 09:10:25,835 - logger - INFO - robot_app еще не инициализирован. Метод: get_axis_coordinates - main.py - 100
2024-10-30 09:10:25,835 - logger - INFO - robot_app еще не инициализирован. Метод: get_command_count - main.py - 100
2024-10-30 09:10:26,839 - logger - INFO - SHARED_MEMORY - client_socket.py - 59
2024-10-30 09:10:26,839 - logger - INFO - Connect to 0 by SHARED_MEMORY - client_socket.py - 70
2024-10-30 09:10:28,071 - logger - INFO - not_connected - robot.py - 52
2024-10-30 09:15:42,423 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 09:15:42,423 - logger - INFO - None - robot.py - 52
2024-10-30 09:15:42,423 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 09:15:42,423 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 09:15:42,424 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 09:15:42,424 - logger - INFO - robot_app еще не инициализирован. Метод: get_world_coordinates - main.py - 100
2024-10-30 09:15:42,424 - logger - INFO - robot_app еще не инициализирован. Метод: get_axis_coordinates - main.py - 100
2024-10-30 09:15:42,424 - logger - INFO - robot_app еще не инициализирован. Метод: get_command_count - main.py - 100
2024-10-30 09:15:43,426 - logger - INFO - SHARED_MEMORY - client_socket.py - 59
2024-10-30 09:15:43,427 - logger - INFO - Connect to 0 by SHARED_MEMORY - client_socket.py - 70
2024-10-30 09:15:49,068 - logger - INFO - not_connected - robot.py - 52
2024-10-30 09:16:10,577 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 09:16:10,577 - logger - INFO - None - robot.py - 52
2024-10-30 09:16:10,577 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 09:16:10,577 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 09:16:10,577 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 09:16:10,577 - logger - INFO - robot_app еще не инициализирован. Метод: get_world_coordinates - main.py - 100
2024-10-30 09:16:10,577 - logger - INFO - robot_app еще не инициализирован. Метод: get_axis_coordinates - main.py - 100
2024-10-30 09:16:10,577 - logger - INFO - robot_app еще не инициализирован. Метод: get_command_count - main.py - 100
2024-10-30 09:16:11,579 - logger - INFO - SHARED_MEMORY - client_socket.py - 59
2024-10-30 09:16:11,580 - logger - INFO - Connect to 0 by SHARED_MEMORY - client_socket.py - 70
2024-10-30 09:16:13,467 - logger - INFO - not_connected - robot.py - 52
2024-10-30 09:16:14,840 - logger - INFO - connected - robot.py - 52
2024-10-30 09:16:15,626 - logger - INFO - UPDATE - client_socket.py - 135
2024-10-30 09:16:15,627 - logger - INFO - Координаты осей [-60.0, 40.0, -10.0, -60.0, -75.0, 0.0] - client_socket.py - 213
2024-10-30 09:16:16,127 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 09:16:16,778 - logger - INFO - Мировые координаты [643.622, -1289.604, 254.682, 124.7, 24.209, -58.492] - client_socket.py - 213
2024-10-30 09:16:17,304 - logger - INFO - convrt to joint (-0.9617792373994754, 1.3826742805011467, 1.4744277719870473, -0.32605735040753075, -0.014187246281041198, 0.0007872093341683313) - client_socket.py - 208
2024-10-30 09:16:17,306 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 09:16:18,121 - logger - INFO - Команд в очереди ['ok'] - client_socket.py - 213
2024-10-30 09:16:20,178 - logger - INFO - convrt to joint (-0.962919808014391, 1.3960173503704603, 1.5314292361301705, -0.32937750132525134, -0.005713089825925223, 0.0007926691256815514) - client_socket.py - 208
2024-10-30 09:16:20,179 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 09:16:22,136 - logger - INFO - convrt to joint (-0.9619411183496612, 1.331028613251226, 1.5225435538882692, -0.3292949882180839, -0.006972614569209766, 0.0007921888870971997) - client_socket.py - 208
2024-10-30 09:16:22,137 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 09:16:23,935 - logger - INFO - convrt to joint (-0.9601953265678844, 1.2657417743115893, 1.504479727467634, -0.3292979083230321, -0.009575538739216318, 0.0007922818531529111) - client_socket.py - 208
2024-10-30 09:16:23,935 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 09:16:25,768 - logger - INFO - convrt to joint (-0.9009338995273227, 1.2776242635936454, 1.5176199582264973, -0.3292978378224871, -0.007650602877334456, 0.0007923934678053334) - client_socket.py - 208
2024-10-30 09:16:25,769 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 09:16:27,604 - logger - INFO - convrt to joint (-0.8450730061696043, 1.2878647492340447, 1.5226297210844573, -0.32928271135778375, -0.0069208962265473566, 0.0007892845982760743) - client_socket.py - 208
2024-10-30 09:16:27,605 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 09:16:29,365 - logger - INFO - convrt to joint (-0.846496454716964, 1.3497024920597598, 1.5405287679494524, -0.32927326911166777, -0.004327186492832916, 0.0007898109812426688) - client_socket.py - 208
2024-10-30 09:16:29,366 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 09:16:31,158 - logger - INFO - convrt to joint (-0.8473432427421879, 1.4117051230721032, 1.5524863191952138, -0.32927351103614133, -0.002603263504382076, 0.0007898871892273335) - client_socket.py - 208
2024-10-30 09:16:31,159 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 09:16:33,029 - logger - INFO - convrt to joint (-0.9033728133556452, 1.4048427423342684, 1.5463136322556625, -0.32927350475385736, -0.003514076946669365, 0.0007898565811525732) - client_socket.py - 208
2024-10-30 09:16:33,030 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 09:16:34,827 - logger - INFO - convrt to joint (-0.9634106180187462, 1.3992096493743724, 1.5443571571668588, -0.3292896762518855, -0.003799770043920755, 0.0007941312288253129) - client_socket.py - 208
2024-10-30 09:16:34,831 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:00:34,887 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:00:34,888 - logger - INFO - None - robot.py - 52
2024-10-30 11:00:34,888 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:00:34,888 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:00:34,888 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:00:34,888 - logger - INFO - robot_app еще не инициализирован. Метод: get_world_coordinates - main.py - 100
2024-10-30 11:00:34,888 - logger - INFO - robot_app еще не инициализирован. Метод: get_axis_coordinates - main.py - 100
2024-10-30 11:00:34,888 - logger - INFO - robot_app еще не инициализирован. Метод: get_command_count - main.py - 100
2024-10-30 11:00:35,890 - logger - INFO - SHARED_MEMORY - client_socket.py - 59
2024-10-30 11:00:35,890 - logger - INFO - Connect to 0 by SHARED_MEMORY - client_socket.py - 70
2024-10-30 11:00:37,810 - logger - INFO - not_connected - robot.py - 52
2024-10-30 11:00:48,277 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:00:48,278 - logger - INFO - None - robot.py - 52
2024-10-30 11:00:48,278 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:00:48,278 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:00:48,278 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:00:48,278 - logger - INFO - robot_app еще не инициализирован. Метод: get_world_coordinates - main.py - 100
2024-10-30 11:00:48,278 - logger - INFO - robot_app еще не инициализирован. Метод: get_axis_coordinates - main.py - 100
2024-10-30 11:00:48,278 - logger - INFO - robot_app еще не инициализирован. Метод: get_command_count - main.py - 100
2024-10-30 11:00:49,279 - logger - INFO - SHARED_MEMORY - client_socket.py - 59
2024-10-30 11:00:49,280 - logger - INFO - Connect to 0 by SHARED_MEMORY - client_socket.py - 70
2024-10-30 11:00:51,776 - logger - INFO - not_connected - robot.py - 52
2024-10-30 11:00:53,143 - logger - INFO - connected - robot.py - 52
2024-10-30 11:00:54,582 - logger - INFO - UPDATE - client_socket.py - 135
2024-10-30 11:00:54,583 - logger - INFO - Координаты осей [-60.0, 40.0, -10.0, -60.0, -75.0, 0.0] - client_socket.py - 213
2024-10-30 11:00:55,083 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:00:55,766 - logger - INFO - Мировые координаты [643.622, -1289.604, 254.682, 124.7, 24.209, -58.492] - client_socket.py - 213
2024-10-30 11:00:56,277 - logger - INFO - convrt to joint (-0.9641667182472826, 1.3811043496197122, 1.4620132818630056, -0.3190459026699363, -0.016212773660530755, 0.0006844177502805399) - client_socket.py - 208
2024-10-30 11:00:56,278 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:00:57,064 - logger - INFO - Команд в очереди ['ok'] - client_socket.py - 213
2024-10-30 11:00:57,571 - logger - INFO - convrt to joint (-0.9258745969001333, 1.383394126852679, 1.5101984675391988, -0.40805635879176944, -0.007863209239280286, 0.0006266015440709355) - client_socket.py - 208
2024-10-30 11:00:57,572 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:00:59,400 - logger - INFO - convrt to joint (-0.9273723905995706, 1.335847313689553, 1.559838627023672, -0.4059760812240212, -0.0014417595643196794, 0.0006317071811625902) - client_socket.py - 208
2024-10-30 11:00:59,401 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:01:01,258 - logger - INFO - convrt to joint (-0.9270404467331516, 1.2773299803096851, 1.569956187776375, -0.4060335182604374, -0.00013243202432140707, 0.0006313662054438333) - client_socket.py - 208
2024-10-30 11:01:01,259 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:01:03,088 - logger - INFO - convrt to joint (-0.867242660915166, 1.2899104466960765, 1.5816655678385425, -0.40603202673806005, 0.0013899054314926564, 0.0006314153354672285) - client_socket.py - 208
2024-10-30 11:01:03,088 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:01:04,976 - logger - INFO - convrt to joint (-0.811106846059091, 1.2996161723859672, 1.5833874137812909, -0.4060159511566647, 0.0016143737747208297, 0.000626200047589444) - client_socket.py - 208
2024-10-30 11:01:04,978 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:01:06,777 - logger - INFO - convrt to joint (-0.8115691876266298, 1.3592228910458233, 1.587347120672864, -0.40601054234613076, 0.002132915337110103, 0.0006265907888197208) - client_socket.py - 208
2024-10-30 11:01:06,778 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:01:08,679 - logger - INFO - convrt to joint (-0.8118496085523808, 1.41842655421539, 1.5849641845056581, -0.4060105907222275, 0.001827565604110138, 0.0006265787493343286) - client_socket.py - 208
2024-10-30 11:01:08,680 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:01:10,544 - logger - INFO - convrt to joint (-0.867990173517208, 1.4106313505471093, 1.5776479427530081, -0.406010589591622, 0.000877000632091111, 0.0006265768754185932) - client_socket.py - 208
2024-10-30 11:01:10,544 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:01:12,426 - logger - INFO - convrt to joint (-0.928086786579112, 1.4050727575916406, 1.576637872857932, -0.4060285427422507, 0.0007453956596548805, 0.000632873615577945) - client_socket.py - 208
2024-10-30 11:01:12,427 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:09:14,908 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:09:14,909 - logger - INFO - None - robot.py - 52
2024-10-30 11:09:14,909 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:09:14,909 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:09:14,909 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:09:14,909 - logger - INFO - robot_app еще не инициализирован. Метод: get_world_coordinates - main.py - 100
2024-10-30 11:09:14,909 - logger - INFO - robot_app еще не инициализирован. Метод: get_axis_coordinates - main.py - 100
2024-10-30 11:09:14,909 - logger - INFO - robot_app еще не инициализирован. Метод: get_command_count - main.py - 100
2024-10-30 11:09:15,911 - logger - INFO - SHARED_MEMORY - client_socket.py - 59
2024-10-30 11:09:15,911 - logger - INFO - Connect to 0 by SHARED_MEMORY - client_socket.py - 70
2024-10-30 11:09:21,334 - logger - INFO - not_connected - robot.py - 52
2024-10-30 11:09:37,305 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:09:37,305 - logger - INFO - None - robot.py - 52
2024-10-30 11:09:37,305 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:09:37,305 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:09:37,305 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 11:09:37,305 - logger - INFO - robot_app еще не инициализирован. Метод: get_world_coordinates - main.py - 100
2024-10-30 11:09:37,305 - logger - INFO - robot_app еще не инициализирован. Метод: get_axis_coordinates - main.py - 100
2024-10-30 11:09:37,305 - logger - INFO - robot_app еще не инициализирован. Метод: get_command_count - main.py - 100
2024-10-30 11:09:38,307 - logger - INFO - SHARED_MEMORY - client_socket.py - 59
2024-10-30 11:09:38,308 - logger - INFO - Connect to 0 by SHARED_MEMORY - client_socket.py - 70
2024-10-30 11:09:38,893 - logger - INFO - not_connected - robot.py - 52
2024-10-30 11:09:40,254 - logger - INFO - connected - robot.py - 52
2024-10-30 11:09:41,367 - logger - INFO - UPDATE - client_socket.py - 135
2024-10-30 11:09:41,367 - logger - INFO - Координаты осей [-60.0, 40.0, -10.0, -60.0, -75.0, 0.0] - client_socket.py - 213
2024-10-30 11:09:41,867 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:09:42,550 - logger - INFO - Мировые координаты [643.622, -1289.604, 254.682, 124.7, 24.209, -58.492] - client_socket.py - 213
2024-10-30 11:09:43,069 - logger - INFO - convrt to joint (-0.9641667182472826, 1.3811043496197122, 1.4620132818630056, -0.3190459026699363, -0.016212773660530755, 0.0006844177502805399) - client_socket.py - 208
2024-10-30 11:09:43,069 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:09:43,908 - logger - INFO - Команд в очереди ['ok'] - client_socket.py - 213
2024-10-30 11:09:45,653 - logger - INFO - convrt to joint (-0.965344569011056, 1.3950554043536214, 1.5254623297346648, -0.323704243822541, -0.006657361343343276, 0.0006926371784189803) - client_socket.py - 208
2024-10-30 11:09:45,653 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:09:47,483 - logger - INFO - convrt to joint (-0.9643601930801424, 1.3304767036145582, 1.5177942032039704, -0.3235953729884289, -0.007741297792019916, 0.0006920026205667742) - client_socket.py - 208
2024-10-30 11:09:47,484 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:09:49,312 - logger - INFO - convrt to joint (-0.9623971029138105, 1.2649538432164351, 1.4978895055060766, -0.3235979115503935, -0.010635934813214482, 0.00069208189800441) - client_socket.py - 208
2024-10-30 11:09:49,313 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:09:51,226 - logger - INFO - convrt to joint (-0.9032643533215897, 1.2769724392451036, 1.5121336610476714, -0.3235978547771738, -0.008529422346131459, 0.0006921811984730868) - client_socket.py - 208
2024-10-30 11:09:51,227 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:09:53,048 - logger - INFO - convrt to joint (-0.8474710498831953, 1.2873384469644744, 1.5178836697442533, -0.3235812221481136, -0.007683258725443001, 0.0006874929662242235) - client_socket.py - 208
2024-10-30 11:09:53,048 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:09:54,959 - logger - INFO - convrt to joint (-0.8490522419075462, 1.349340751556187, 1.5372922835853915, -0.3235671703287998, -0.004842989400555271, 0.0006842452229884757) - client_socket.py - 208
2024-10-30 11:09:54,960 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:09:56,820 - logger - INFO - convrt to joint (-0.8499836085744474, 1.4114721955616782, 1.550396193567023, -0.32356753514636977, -0.0029337926801620336, 0.0006844515418767924) - client_socket.py - 208
2024-10-30 11:09:56,821 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:09:58,650 - logger - INFO - convrt to joint (-0.9060003908528551, 1.40466959901939, 1.5442300964062998, -0.3235675336144916, -0.0038536218216909425, 0.0006844127647018144) - client_socket.py - 208
2024-10-30 11:09:58,651 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 11:10:00,479 - logger - INFO - convrt to joint (-0.9660292763470986, 1.3990351363243767, 1.5421813179445052, -0.3235851166278426, -0.004155886872343025, 0.0006898471811634914) - client_socket.py - 208
2024-10-30 11:10:00,480 - logger - INFO - set joints - client_socket.py - 216
2024-10-30 12:01:51,799 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 12:01:51,800 - logger - INFO - None - robot.py - 52
2024-10-30 12:01:51,800 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 12:01:51,800 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 12:01:51,800 - logger - INFO - robot_app еще не инициализирован. Метод: get_status - main.py - 100
2024-10-30 12:01:51,800 - logger - INFO - robot_app еще не инициализирован. Метод: get_world_coordinates - main.py - 100
2024-10-30 12:01:51,800 - logger - INFO - robot_app еще не инициализирован. Метод: get_axis_coordinates - main.py - 100
2024-10-30 12:01:51,800 - logger - INFO - robot_app еще не инициализирован. Метод: get_command_count - main.py - 100
2024-10-30 12:01:52,802 - logger - INFO - SHARED_MEMORY - client_socket.py - 59
2024-10-30 12:01:52,802 - logger - INFO - Connect to -1 by SHARED_MEMORY - client_socket.py - 70

BIN
dist.zip Normal file

Binary file not shown.

1
dist/data vendored Symbolic link
View File

@ -0,0 +1 @@
../data

BIN
dist/main vendored Executable file

Binary file not shown.

BIN
dist/pybullet_server vendored Executable file

Binary file not shown.

1
dist/robots.json vendored Symbolic link
View File

@ -0,0 +1 @@
../robots.json

BIN
dist/run vendored Executable file

Binary file not shown.

BIN
dist/test_socket_server vendored Executable file

Binary file not shown.

1
dist/urdf vendored Symbolic link
View File

@ -0,0 +1 @@
../urdf

23
main.py
View File

@ -50,7 +50,7 @@ class MyApp:
"startCommand": self.command_wrapper, "startCommand": self.command_wrapper,
"changeType": self.change_type_wrapper, "changeType": self.change_type_wrapper,
"command_data": self.get_command_data, "command_data": self.get_command_data,
"command_type": self.get_command_type "command_type": self.get_command_type,
}, },
visPanel={ visPanel={
"get_pybullet_image": self.get_pybullet_image_wrapper, "get_pybullet_image": self.get_pybullet_image_wrapper,
@ -92,7 +92,6 @@ class MyApp:
) )
self.robot_app.start_loop(selected_robot["urdf"]) self.robot_app.start_loop(selected_robot["urdf"])
def check_robot_app(func): def check_robot_app(func):
def wrapper(self, *args, **kwargs): def wrapper(self, *args, **kwargs):
if self.robot_app: if self.robot_app:
@ -100,9 +99,9 @@ class MyApp:
else: else:
logger.info(f"robot_app еще не инициализирован. Метод: {func.__name__}") logger.info(f"robot_app еще не инициализирован. Метод: {func.__name__}")
return None # Или любое значение по умолчанию return None # Или любое значение по умолчанию
return wrapper return wrapper
@check_robot_app @check_robot_app
def get_status(self): def get_status(self):
return self.robot_app.get_status() return self.robot_app.get_status()
@ -118,33 +117,31 @@ class MyApp:
@check_robot_app @check_robot_app
def get_command_count(self): def get_command_count(self):
return self.robot_app.get_command_count() return self.robot_app.get_command_count()
@check_robot_app @check_robot_app
def get_command_data(self): def get_command_data(self):
return self.robot_app.get_command_data() return self.robot_app.get_command_data()
@check_robot_app @check_robot_app
def get_command_type(self): def get_command_type(self):
return self.robot_app.get_command_type() return self.robot_app.get_command_type()
@check_robot_app @check_robot_app
def get_imitate_point(self): def get_imitate_point(self):
return self.robot_app.get_imitate_point() return self.robot_app.get_imitate_point()
@check_robot_app @check_robot_app
def change_type_wrapper(self, type='base'): def change_type_wrapper(self, type="base"):
return self.robot_app.set_command_type(type) return self.robot_app.set_command_type(type)
@check_robot_app @check_robot_app
def command_wrapper(self): def command_wrapper(self):
return self.robot_app.cycle_start() return self.robot_app.cycle_start()
@check_robot_app @check_robot_app
def imitate_wrapper(self, *args, **kwargs): def imitate_wrapper(self, *args, **kwargs):
logger.info(args)
logger.info(kwargs)
return self.robot_app.imitate() return self.robot_app.imitate()
@check_robot_app @check_robot_app
def update_data_wrapper(self): def update_data_wrapper(self):
return self.robot_app.upd_model() return self.robot_app.upd_model()

39
main.spec Normal file
View File

@ -0,0 +1,39 @@
# -*- mode: python ; coding: utf-8 -*-
a = Analysis(
['main.py'],
pathex=['.', 'robot/', 'gui/'],
binaries=[],
datas=[('robots.json', '.'), ('urdf', 'urdf'), ('data', 'data')],
hiddenimports=['numpy', 'libpython3.10'],
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=[],
noarchive=False,
optimize=0,
)
pyz = PYZ(a.pure)
exe = EXE(
pyz,
a.scripts,
a.binaries,
a.datas,
[],
name='main',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
upx_exclude=[],
runtime_tmpdir=None,
console=True,
disable_windowed_traceback=False,
argv_emulation=False,
target_arch=None,
codesign_identity=None,
entitlements_file=None,
contents_directory='test',
)

39
pybullet_server.spec Normal file
View File

@ -0,0 +1,39 @@
# -*- mode: python ; coding: utf-8 -*-
a = Analysis(
['utils/pybullet_server.py'],
pathex=[],
binaries=[],
datas=[('pyproject.toml', '.'), ('robots.json', '.'), ('urdf', 'urdf'), ('data', 'data')],
hiddenimports=['libpython3.10', 'numpy'],
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=[],
noarchive=False,
optimize=0,
)
pyz = PYZ(a.pure)
exe = EXE(
pyz,
a.scripts,
a.binaries,
a.datas,
[],
name='pybullet_server',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
upx_exclude=[],
runtime_tmpdir=None,
console=True,
disable_windowed_traceback=False,
argv_emulation=False,
target_arch=None,
codesign_identity=None,
entitlements_file=None,
contents_directory='test',
)

View File

@ -0,0 +1 @@
from .client_socket import SocketRobotArm

View File

@ -70,7 +70,7 @@ class SocketRobotArm:
logger.info(f"Connect to {self.physics_client} by {type}") logger.info(f"Connect to {self.physics_client} by {type}")
def load_models(self): def load_models(self):
p.loadURDF("plane.urdf", physicsClientId=self.physics_client) p.loadURDF("urdf/plane.urdf", physicsClientId=self.physics_client)
urdf_path = os.path.join("urdf", f"{self.urdf_filename}.urdf") urdf_path = os.path.join("urdf", f"{self.urdf_filename}.urdf")
self.body_id = p.loadURDF( self.body_id = p.loadURDF(

69
run.py Normal file
View File

@ -0,0 +1,69 @@
import subprocess
import argparse
import sys
import signal
# Параметры для процессов
server_process = None
test_server_process = None
def usage():
"""Функция для отображения помощи"""
print("Usage: run_all.py [--test]")
sys.exit(1)
# Обработчик для сигналов выхода
def cleanup():
"""Функция для остановки серверов при выходе"""
print("Остановка серверов...")
if server_process:
server_process.terminate()
server_process.wait()
if test_server_process:
test_server_process.terminate()
test_server_process.wait()
print("Серверы остановлены.")
# Назначаем функции очистки для сигналов
signal.signal(signal.SIGINT, lambda *_: cleanup())
signal.signal(signal.SIGTERM, lambda *_: cleanup())
# Парсер аргументов командной строки
parser = argparse.ArgumentParser(description="Python launcher script.")
parser.add_argument("--test", action="store_true", help="Запуск в режиме тестирования")
args = parser.parse_args()
# Установка команды для pybullet_server
pybullet_command = ["./pybullet_server.exe"] # Путь к исполняемому файлу
# Если включен режим тестирования, добавляем флаг --test
if args.test:
pybullet_command.append("--test")
# Запуск pybullet_server.exe
print("Запуск pybullet_server...")
server_process = subprocess.Popen(pybullet_command)
# Проверяем успешный запуск сервера
if server_process.poll() is not None:
print("Ошибка при запуске pybullet_server")
sys.exit(1)
# Если включен режим тестирования, запускаем test_socket_server.exe
if args.test:
print("Запуск test_socket_server...")
test_server_process = subprocess.Popen(["./test_socket_server.exe"]) # Путь к исполняемому файлу
# Проверка успешного запуска тестового сервера
if test_server_process.poll() is not None:
print("Ошибка при запуске test_socket_server")
sys.exit(1)
# Запуск основного скрипта main.exe в режиме тестирования
subprocess.run(["./main.exe", "--mode", "test"]) # Путь к исполняемому файлу
else:
# Запуск основного скрипта main.exe
subprocess.run(["./main.exe"]) # Путь к исполняемому файлу
# Очистка после завершения
cleanup()

70
run.sh
View File

@ -1,70 +0,0 @@
#!/bin/bash
# Функция для отображения помощи
usage() {
echo "Usage: $0 [--test]"
exit 1
}
# Разбираем аргументы командной строки
TEST_MODE=0
while [[ "$1" != "" ]]; do
case $1 in
--test ) TEST_MODE=1
;;
* ) usage
exit 1
esac
shift
done
# Функция для очистки запущенных процессов при завершении
cleanup() {
echo "Остановка серверов..."
if [[ -n "$SERVER_PID" ]]; then
kill $SERVER_PID
wait $SERVER_PID 2>/dev/null
fi
if [[ -n "$TEST_SERVER_PID" ]]; then
kill $TEST_SERVER_PID
wait $TEST_SERVER_PID 2>/dev/null
fi
echo "Серверы остановлены."
}
# Устанавливаем ловушку для сигналов выхода
trap cleanup EXIT
# Устанавливаем команду запуска для pybullet_server
PYBULLET_COMMAND="poetry run python utils/pybullet_server.py"
# Добавляем флаг --test, если включен режим тестирования
if [ $TEST_MODE -eq 1 ]; then
PYBULLET_COMMAND+=" --test"
fi
# Запуск сервера в фоновом режиме с учетом флага --test
$PYBULLET_COMMAND &
SERVER_PID=$!
# Проверяем, был ли сервер запущен успешно
if ! kill -0 $SERVER_PID 2>/dev/null; then
echo "Ошибка при запуске pybullet_server"
exit 1
fi
# Запуск тестового серверного скрипта, если требуется режим тестирования
if [ $TEST_MODE -eq 1 ]; then
poetry run python utils/test_socket_server.py &
TEST_SERVER_PID=$!
# Проверяем, был ли тестовый сервер запущен успешно
if ! kill -0 $TEST_SERVER_PID 2>/dev/null; then
echo "Ошибка при запуске test_socket_server"
exit 1
fi
poetry run python main.py --mode test
else
poetry run python main.py
fi

39
run.spec Normal file
View File

@ -0,0 +1,39 @@
# -*- mode: python ; coding: utf-8 -*-
a = Analysis(
['run.py'],
pathex=[],
binaries=[],
datas=[('pyproject.toml', '.'), ('robots.json', '.'), ('urdf', 'urdf'), ('data', 'data')],
hiddenimports=['libpython3.10'],
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=[],
noarchive=False,
optimize=0,
)
pyz = PYZ(a.pure)
exe = EXE(
pyz,
a.scripts,
a.binaries,
a.datas,
[],
name='run',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
upx_exclude=[],
runtime_tmpdir=None,
console=True,
disable_windowed_traceback=False,
argv_emulation=False,
target_arch=None,
codesign_identity=None,
entitlements_file=None,
contents_directory='test',
)

39
test_socket_server.spec Normal file
View File

@ -0,0 +1,39 @@
# -*- mode: python ; coding: utf-8 -*-
a = Analysis(
['utils/test_socket_server.py'],
pathex=[],
binaries=[],
datas=[('pyproject.toml', '.'), ('robots.json', '.'), ('urdf', 'urdf'), ('data', 'data')],
hiddenimports=['libpython3.10'],
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=[],
noarchive=False,
optimize=0,
)
pyz = PYZ(a.pure)
exe = EXE(
pyz,
a.scripts,
a.binaries,
a.datas,
[],
name='test_socket_server',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
upx_exclude=[],
runtime_tmpdir=None,
console=True,
disable_windowed_traceback=False,
argv_emulation=False,
target_arch=None,
codesign_identity=None,
entitlements_file=None,
contents_directory='test',
)

28
urdf/plane.urdf Normal file
View File

@ -0,0 +1,28 @@
<?xml version="1.0" ?>
<robot name="plane">
<link name="planeLink">
<contact>
<lateral_friction value="1"/>
</contact>
<inertial>
<origin rpy="0 0 0" xyz="0 0 0"/>
<mass value=".0"/>
<inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
</inertial>
<visual>
<origin rpy="0 0 0" xyz="0 0 0"/>
<geometry>
<mesh filename="../urdf_support/plane.obj" scale="1 1 1"/>
</geometry>
<material name="white">
<color rgba="1 1 1 1"/>
</material>
</visual>
<collision>
<origin rpy="0 0 0" xyz="0 0 -5"/>
<geometry>
<box size="30 30 10"/>
</geometry>
</collision>
</link>
</robot>

18
urdf_support/plane.obj Normal file
View File

@ -0,0 +1,18 @@
# Blender v2.66 (sub 1) OBJ File: ''
# www.blender.org
mtllib plane.mtl
o Plane
v 15.000000 -15.000000 0.000000
v 15.000000 15.000000 0.000000
v -15.000000 15.000000 0.000000
v -15.000000 -15.000000 0.000000
vt 15.000000 0.000000
vt 15.000000 15.000000
vt 0.000000 15.000000
vt 0.000000 0.000000
usemtl Material
s off
f 1/1 2/2 3/3
f 1/1 3/3 4/4