Đăng Ký
Kết quả 1 đến 10 của 51

Hybrid View

  1. #1
    Thành viên cấp 3
    Ngày tham gia
    Mar 2011
    Đang ở
    ĐÀ NẴNG
    Bài viết
    139
    Thanks
    1
    Thanked 1 Time in 1 Post
    Trích dẫn Gửi bởi khanh my Xem bài viết
    Mình thì thường làm theo cách này, đầu tiên bạn hãy xác định tọa độ của từng tầng, sau đó nhớ tọa độ của từng tầng đó (nếu là giám sát thì căn cứ vào thang máy thật nó chạy như thế nào để xác định tọa độ này cho hợp lý, để thang máy thật chạy đúng với thang máy mô phỏng) mình có tọa độ của từng tầng rồi thì chỉ cần sử dụng lệnh if thôi mà, nếu = tọa độ đó thì dừng, bé hơn thì hạ, lớn hơn thì nâng ^^
    ví dụ mình viết như thế này nha:
    a=GetTop("mohinh_thangmay.pdl","BT");
    if(a==400) //400 là tọa độ của buồng thang ,khii đến tọa độ này thì mình set cảm biến phát hiện đúng tầng
    {
    settagbit("cbdungtang"==1);
    else
    settagbit("cbdungtang"==0);
    }
    như vậy mà khi đến tọa độ thì nó ko set.chỉ khi a< và > trong khoang 400 thì nó mới set.

  2. #2
    khanh my
    Guest
    Trích dẫn Gửi bởi kkkkkkkk Xem bài viết
    ví dụ mình viết như thế này nha:
    a=GetTop("mohinh_thangmay.pdl","BT");
    if(a==400) //400 là tọa độ của buồng thang ,khii đến tọa độ này thì mình set cảm biến phát hiện đúng tầng
    {
    settagbit("cbdungtang"==1);
    else
    settagbit("cbdungtang"==0);
    }
    như vậy mà khi đến tọa độ thì nó ko set.chỉ khi a< và > trong khoang 400 thì nó mới set.
    Mình làm như thế này:

    if(GetTagBit("CHON_TANG2")==1) //Return-Type: BOOL
    {
    bien1=GetTop("THANG NANG HANG.pdl","THUNG"); //Return-Type: long int
    if(bien1>340)
    {
    bien1=bien1-5;
    SetTop("THANG NANG HANG.pdl","THUNG",bien1); //Return-Type: BOOL
    SetTagBit("LEN",1); //Return-Type: BOOL
    SetTagBit("XUONG",0); //Return-Type: BOOL

    if (bien1==340)
    {
    SetTagBit("CHON_TANG2",0); //Return-Type: BOOL
    SetTagBit("LEN",0); //Return-Type: BOOL
    SetTagBit("XUONG",0); //Return-Type: BOOL

    }
    }

    if (bien1<340)
    {
    bien1=bien1+5;
    SetTop("THANG NANG HANG.pdl","THUNG",bien1); //Return-Type: BOOL
    SetTagBit("LEN",0); //Return-Type: BOOL
    SetTagBit("XUONG",1); //Return-Type: BOOL

    if (bien1==340)
    {
    SetTagBit("CHON_TANG2",0); //Return-Type: BOOL
    SetTagBit("LEN",0); //Return-Type: BOOL
    SetTagBit("XUONG",0); //Return-Type: BOOL

    }


    }


    }

  3. #3
    Thành viên cấp 3
    Ngày tham gia
    Mar 2011
    Đang ở
    ĐÀ NẴNG
    Bài viết
    139
    Thanks
    1
    Thanked 1 Time in 1 Post
    như vậy thì khi bien == 340 nó vẩn settagbit.
    mình làm như vậy nhung nó ko set. chác nó ko có giá trị đó,

  4. #4
    khanh my
    Guest
    Trích dẫn Gửi bởi kkkkkkkk Xem bài viết
    ví dụ mình viết như thế này nha:
    a=GetTop("mohinh_thangmay.pdl","BT");
    if(a==400) //400 là tọa độ của buồng thang ,khii đến tọa độ này thì mình set cảm biến phát hiện đúng tầng
    {
    settagbit("cbdungtang"==1);
    else
    settagbit("cbdungtang"==0);
    }
    như vậy mà khi đến tọa độ thì nó ko set.chỉ khi a< và > trong khoang 400 thì nó mới set.
    Có thể bạn viết Code nhầm ở chổ lệnh if, lưu ý ở đây là if lồng if nhé, chứ if riêng lẻ là không được, vì lệnh kia cứ làm cho nó chạy, lệnh này làm nó dừng, 2 lệnh như vậy nó không tác động, ở bài mình 2 cái lệnh LEN ; XUONG là mình làm cho cái mủi tên hiện thôi, k phải hành trình của thang đâu nhé, hành trình của thang chỉ phụ thuộc vào biến đầu tiên đó là if(GetTagBit("CHON_TANG2")==1) //Return-Type: BOOL
    Lần sửa cuối bởi khanh my, ngày 03-14-2012 lúc 01:11 PM.

  5. #5
    Thành viên cấp 3
    Ngày tham gia
    Mar 2011
    Đang ở
    ĐÀ NẴNG
    Bài viết
    139
    Thanks
    1
    Thanked 1 Time in 1 Post
    340 là tọa độ ở đâu vây? bài này bạn làm thang nâng hàng phải ko?
    có mấy tâng ?

  6. #6
    khanh my
    Guest
    Trích dẫn Gửi bởi kkkkkkkk Xem bài viết
    340 là tọa độ ở đâu vây? bài này bạn làm thang nâng hàng phải ko?
    có mấy tâng ?
    Thang nâng hàng của mình gồm có 4 tầng, tọa độ nó váo chổ Geometry đó

Đánh dấu

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •  
Back to Top