안녕하세요,
트리거 관련 질문이 있어서 찾아왔습니다.
현재 python으로 코드 구현 중이고, 굳이 python이 아닌 다른 언어 혹은 적절한 c function을 알려주셔도 좋습니다.
혹시 2개의 트리거를 동시에 적용하는 것이 가능할까요?
예를 들어 한 작업의 시작과 끝에 TTL 신호가 하나씩, 총 2개가 뜨고
그 작업 내에서 별개의 TTL 신호가 여럿 뜨는 상황입니다.
앞의 것을 트리거1, 뒤의 것을 트리거2라고 했을 때,
트리거1의 하강엣지에서 '시작'이라고 프로그램에 알려주고, 트리거2의 high에서(혹은 상승엣지부터 하강엣지까지) DAQ를 하여 하나의 파일로 저장, 이어지는 트리거2의 low에서(혹은 하강엣지부터 상승엣지까지) 또다시 DAQ를 하여 하나의 파일로 저장 하고 싶습니다. 마지막으로 트리거1의 다음 신호 상승엣지에서 모든 작업을 중지하고 싶습니다.
간단히 생각하면 (bool) isTriggered 라는 값을 얻을 수 있어서 트리거1하강==true && 트리거2상승==true일 때 등으로 나눠 데이타를 읽을 수 있으면 좋을 것 같습니다.
그런 값이 존재하는지, 값이 존재한다면 어떻게 얻을 수 있는지,
해당 값이 존재하지 않는다면 어떤 방법으로 트리거를 2중으로 적용할 수 있을지 궁금합니다.
감사합니다.
날짜: 03-08-2020 07:45 PM
안녕하세요,
Case 구문으로 조건을 나누어서 동작을 시키면 어떨까요?
예를 들어 Trigger 1의 Edge를 Monitoring 하고 그에 따른 동작을 진행하는 부분, Trigger 1의 Trigger 유무에 따라 Trigger 2의 Edge를 확인하는 부분.
Trigger 1 확인 -> Trigger 2 확인 및 동작 & Trigger 1 확인 형태로 구현할 수 있을 것 같네요.
안녕하세요, 답변 감사합니다.
혹시 trigger의 유무를 어떻게 확인할 수 있는지 알 수 있을까요?
trigger가 될 때마다 발생하는 isTriggered 같은 신호가 따로 있는 건가요?
case구문을 사용 하는 것은 좋을 것 같은데, case에 넣어줄 변수를 어떻게 구해야 하는지가 궁금합니다.
isTriggered 라는 정보를 어떻게 얻는지 여부를 알 수가 없어서 일단 콜백함수를 사용하긴 했는데, 이 쪽에서도 문제가 좀 있어서 실시간으로 DI를 보면서 AI를 제어해야 하나 고민중입니다. 이 방법에 대해서도 나와있는 예제가 설명이 없어서 어떻게 구현해야 하는지, 혹은 가능하기는 한지 찾아보는 중입니다.
감사합니다.