흐음.. 그냥 머리도 식힐겸 좀 보는데

아리쏭.. 한게 많아서 헷갈리네 ㅠㅠ

'개소리 왈왈 > 직딩의 비애' 카테고리의 다른 글

5월의 끝자락  (0) 2022.05.29
관악산 화재  (0) 2022.05.17
보안 전시회  (0) 2022.04.20
ai 컨퍼런스  (0) 2022.04.14
외근, 구매  (0) 2022.03.15
Posted by 구차니

그냥 보고 있노라면 난 저정도는 아닌데 싶으면서도

내 모습들이 불쑥불쑥 보이는 것 같아서

애들에게 어떻게 대해야 할까 고민된다.

'개소리 왈왈 > 육아관련 주저리' 카테고리의 다른 글

야근  (0) 2022.05.19
포켓몬 빵 사겠다고  (2) 2022.05.15
어버이날  (0) 2022.05.08
생일, 결혼기념일  (0) 2022.05.07
노트5 파괴!  (0) 2022.05.06
Posted by 구차니
하드웨어/PLC (LSE)2022. 5. 12. 11:12

HMI가 없어서 임의로 대충 골라서 했는데, HMI의 내부 변수를 HS/HW/HK로 만들어 둔 듯 하다.

HS는 Special device

HW는 internal Word Device

HK는 Keep device

 

 

 

+

HS는.. 약간 F 플래그 느낌이 나는것 같기도 하고?

 

 

'하드웨어 > PLC (LSE)' 카테고리의 다른 글

lse plc cpu 모듈 핫 스왑?  (0) 2022.05.16
lse plc chk 빨간불  (0) 2022.05.16
lse plc fenet  (0) 2022.05.11
lse xp builder xpe 확장자 열기 실패  (0) 2022.05.11
LSE PLC XGL-CH2B  (0) 2022.04.28
Posted by 구차니
Programming/android2022. 5. 12. 08:18

핸드폰을 HDMI로 연결해서 쓰다보니 세로 모드에서 HDMI 미러링시

작게 나오는게 그게 아쉬워서, 세로 모드를 화면 돌린채로 가득 채울수 없나 찾아보는 중.

 

the HDMI output can be rotated, after unlocking the rotation lock:

adb shell root
adb shell remount
adb shell setprop persist.demo.hdmirotation portrait
adb shell setprop persist.demo.hdmirotationlock false
adb shell setprop persist.demo.singledisplay true
adb reboot
one can then set the wm's display geometry:

adb shell wm size 1080x1920
adb shell wm size 1920x1920
or switch the user_rotation:

settings put system user_rotation 1
settings put system user_rotation 3
the NXP community seems to be the source.

[링크 : https://stackoverflow.com/questions/54468895]

[링크 : https://m.clien.net/service/board/cm_andro/11264652]

 

Posted by 구차니
Linux API/network2022. 5. 11. 15:20

서버 사이드 listen + accept

클라이언트 사이드 connect

[링크 : https://charsyam.wordpress.com/2018/01/09/입-개발-ipv4-tcp-socket-listen-에서-accept-까지/]

 

[링크 : https://www.ibm.com/docs/en/i/7.2?topic=designs-example-nonblocking-io-select]

[링크 : https://velog.io/@jyongk/TCP-Socket-Blocking-Non-Blocking]

[링크 : https://ospace.tistory.com/189]

 

accept poll 처리

accept 시에 돌려받는 fd로 io를 처리하면 accept 역시 poll로 처리가 가능해진다.

listen 포트는 그대로 둔채, accept 하고 나서 다른 포트로 통신하게 되는 이유가 이거였나..

[링크 : https://www.crocus.co.kr/544]

[링크 : https://www.joinc.co.kr/w/Site/Network_Programing/Documents/Poll]

'Linux API > network' 카테고리의 다른 글

recv 와 read 차이  (0) 2023.06.23
AF_PACKET로 link layer 열기  (0) 2022.06.09
ssl socket 예제  (0) 2022.03.25
TCP timeout  (0) 2020.09.29
UDS (Unix Domain Socket)  (0) 2020.09.01
Posted by 구차니
하드웨어/PLC (LSE)2022. 5. 11. 11:11

네트워크 장비를 PLC에서 어떻게 가지고 노나 싶었는데, L00000 번지대를 이용해서 제어를 하는 듯.

 

 

'하드웨어 > PLC (LSE)' 카테고리의 다른 글

lse plc chk 빨간불  (0) 2022.05.16
lse plc 작화(drawing) cpu internal 변수  (0) 2022.05.12
lse xp builder xpe 확장자 열기 실패  (0) 2022.05.11
LSE PLC XGL-CH2B  (0) 2022.04.28
PLC not  (0) 2022.04.28
Posted by 구차니
하드웨어/PLC (LSE)2022. 5. 11. 10:47

이런 드러운 그지 깽깽이들 -_-

전달 받은 프로그램은 XPE 라서 XPD를 열수 있는 XP-Builder와는 호환되지 않는다.

 

'하드웨어 > PLC (LSE)' 카테고리의 다른 글

lse plc 작화(drawing) cpu internal 변수  (0) 2022.05.12
lse plc fenet  (0) 2022.05.11
LSE PLC XGL-CH2B  (0) 2022.04.28
PLC not  (0) 2022.04.28
plc toggle  (0) 2022.04.28
Posted by 구차니

pi 라는 함수들이 있어서 찾아보니 코드로는 모르겠고

도움말에서 검색.. Protocol Independent. 무슨 의미이려나?

아무튼 메모리 1Kb 더 먹고 hostname resolve를 제공한다는 것 같은데(resolution은 또 머야..)

그 기능만 차이가 있다면 굳이 pi를 쓸 이유는 없을 듯

 

TCP (IPv4) Context

The TCP backend implements a Modbus variant used for communications over TCP/IPv4 networks. It does not require a checksum calculation as lower layer takes care of the same.
Create a Modbus TCP contextmodbus_new_tcp(3)

TCP PI (IPv4 and IPv6) Context

The TCP PI (Protocol Indepedent) backend implements a Modbus variant used for communications over TCP IPv4 and IPv6 networks. It does not require a checksum calculation as lower layer takes care of the same.
Contrary to the TCP IPv4 only backend, the TCP PI backend offers hostname resolution but it consumes about 1Kb of additional memory.
Create a Modbus TCP contextmodbus_new_tcp_pi(3)

[링크 : https://libmodbus.org/docs/v3.0.8/]

'프로그램 사용 > libmodbus' 카테고리의 다른 글

libmodbus modbus_mapping_new()  (0) 2022.05.10
libmodbus poll 적용  (0) 2022.05.04
modbus tcp  (0) 2022.05.04
libmodbus 예제 프로그램  (0) 2022.05.04
libmodbus tcp 예제  (0) 2022.05.04
Posted by 구차니

미국 대통령에 의한 우크라이나 민주주의 방어를 위한 lend-lease 법이 통과되었다고.

우크라이나를 앞세운 미국의 대리전, 그리고

그 상대국은 일차적으로는 러시아지만.. 중국이 어떻게 움직일지 모르는 상황이고,

중-러 둘다 내부상황이 좋지 않기에, 불만을 외부로 돌리기 위해 어떻게 튈지 전혀 예측이 안되는 상황.

 

[링크 : https://www.whitehouse.gov/briefing-room/speeches-remarks/2022/05/09/remarks-by-president-biden-at-signing-of-s-3522-the-ukraine-democracy-defense-lend-lease-act-of-2022/]

Posted by 구차니

함수는 간단한데.. 예제가 이상하게 만들어 놔서 헷갈렸네..

아무튼 modbus_mapping_new() 함수의 인자들은 

coil / discrete input / holding register / input register 에 대한 변수를 몇개까지 유지하냐에 대한 값을 받는다.

 

modbus_mapping_t modbus_mapping_new(int nb_bits, int nb_input_bits, int nb_registers, int nb_input_registers);

[링크 : https://libmodbus.org/docs/v3.0.8/modbus_mapping_new.html]

 

libmodbus의 test 에 생성된 unit-test.h 소스에서 추출하고

 29 const uint16_t UT_BITS_ADDRESS = 0x130;
 30 const uint16_t UT_BITS_NB = 0x25;
 31 const uint8_t UT_BITS_TAB[] = { 0xCD, 0x6B, 0xB2, 0x0E, 0x1B };
 32
 33 const uint16_t UT_INPUT_BITS_ADDRESS = 0x1C4;
 34 const uint16_t UT_INPUT_BITS_NB = 0x16;
 35 const uint8_t UT_INPUT_BITS_TAB[] = { 0xAC, 0xDB, 0x35 };
 36
 37 const uint16_t UT_REGISTERS_ADDRESS = 0x160;
 38 const uint16_t UT_REGISTERS_NB = 0x3;
 39 const uint16_t UT_REGISTERS_NB_MAX = 0x20;
 40 const uint16_t UT_REGISTERS_TAB[] = { 0x022B, 0x0001, 0x0064 };

 56 const uint16_t UT_INPUT_REGISTERS_ADDRESS = 0x108;
 57 const uint16_t UT_INPUT_REGISTERS_NB = 0x1;
 58 const uint16_t UT_INPUT_REGISTERS_TAB[] = { 0x000A };

 

최신 문서에서 보는데 오히려 더 헷갈린다.

/* The first value of each array is accessible from the 0 address. */
mb_mapping = modbus_mapping_new(BITS_ADDRESS + BITS_NB,
                                INPUT_BITS_ADDRESS + INPUT_BITS_NB,
                                REGISTERS_ADDRESS + REGISTERS_NB,
                                INPUT_REGISTERS_ADDRESS + INPUT_REGISTERS_NB);

[링크 : https://libmodbus.org/docs/v3.1.6/modbus_mapping_new.html]

 

아래처럼 수정하고

        mb_mapping = modbus_mapping_new(10,10,10,10);

 

modbus poll 프로그램에서 아래와 같이 실제 설정된 크기보다 크게 읽도록 하니

 

illegal data address 라고 에러가 발생한다.

 

아무튼.. 메모리 시작 번지는 의미가 없고 그냥 0번지 부터 해당 크기 만큼 응답하게 되는 듯?

 

+

[링크 : https://www.codetd.com/ko/article/12030369]

[링크 : https://m.blog.naver.com/ssundong0_0/221385568015]

[링크 : https://intrepidgeeks.../libmodbus-source-code-analysis-1-basic-framework-key-data-structure-and-interface]

'프로그램 사용 > libmodbus' 카테고리의 다른 글

libmodbus pi 함수들  (0) 2022.05.10
libmodbus poll 적용  (0) 2022.05.04
modbus tcp  (0) 2022.05.04
libmodbus 예제 프로그램  (0) 2022.05.04
libmodbus tcp 예제  (0) 2022.05.04
Posted by 구차니